SharedPreference 给我未知的日志
SharedPreference giving me unknown LOG
我想知道点击Buttom Navigation Bar时显示的log是什么意思,这个item里面的文本信息是保存在prefrence中的。
这是点击时导航项的代码:
case R.id.navigation_gift:
View view = View.inflate(getApplicationContext(), R.layout.section_fragment_69, null);
TextView txtEmtiaz = (TextView) view.findViewById(R.id.txtEmtiaz);
SharedPreferences sp = getSharedPreferences("entire", 0);
txtEmtiaz.setText(sp.getString("tik", ""));
Log.e("POPI", "txt in main2 :" + String.valueOf(txtEmtiaz));
这是显示的日志信息:
/POPI: txt in main2 :android.widget.TextView{1e42d479 V.ED.... ......ID 0,0-0,0 #7f09016d app:id/txtEmtiaz}
您正在尝试打印 TextView。您想改为打印 TextView 的内容,请使用:
txtEmtiaz.getText().toString()
您需要从 txtEmtiaz
获取文本,然后将其设置为 sp
共享首选项。
问题在下面一行:
txtEmtiaz.setText();
更改为:
sp.putString("tik", txtEmtiaz.getText());
日志中的问题:
Log.e("POPI", "txt in main2 :" + String.valueOf(txtEmtiaz));
您正在尝试打印 txtEmtiaz
即 txtEmtiaz
对象,当然您不能。
您应该像下面这样打印 txtEmtiaz
TextView 的值(文本):
Log.e("POPI", "txt in main2 :" + txtEmtiaz.getText());
试试这个
您正在使用没有名称的 SharedPreference。
试试这个 SharedPreference 的名字:
在首选项中设置值
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", "HD");
editor.apply();
从首选项中检索数据:
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
String name = prefs.getString("name", "HD");
txtEmtiaz.setText(name);
}
我想知道点击Buttom Navigation Bar时显示的log是什么意思,这个item里面的文本信息是保存在prefrence中的。
这是点击时导航项的代码:
case R.id.navigation_gift:
View view = View.inflate(getApplicationContext(), R.layout.section_fragment_69, null);
TextView txtEmtiaz = (TextView) view.findViewById(R.id.txtEmtiaz);
SharedPreferences sp = getSharedPreferences("entire", 0);
txtEmtiaz.setText(sp.getString("tik", ""));
Log.e("POPI", "txt in main2 :" + String.valueOf(txtEmtiaz));
这是显示的日志信息:
/POPI: txt in main2 :android.widget.TextView{1e42d479 V.ED.... ......ID 0,0-0,0 #7f09016d app:id/txtEmtiaz}
您正在尝试打印 TextView。您想改为打印 TextView 的内容,请使用:
txtEmtiaz.getText().toString()
您需要从 txtEmtiaz
获取文本,然后将其设置为 sp
共享首选项。
问题在下面一行:
txtEmtiaz.setText();
更改为:
sp.putString("tik", txtEmtiaz.getText());
日志中的问题:
Log.e("POPI", "txt in main2 :" + String.valueOf(txtEmtiaz));
您正在尝试打印 txtEmtiaz
即 txtEmtiaz
对象,当然您不能。
您应该像下面这样打印 txtEmtiaz
TextView 的值(文本):
Log.e("POPI", "txt in main2 :" + txtEmtiaz.getText());
试试这个
您正在使用没有名称的 SharedPreference。
试试这个 SharedPreference 的名字:
在首选项中设置值
SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE).edit();
editor.putString("name", "HD");
editor.apply();
从首选项中检索数据:
SharedPreferences prefs = getSharedPreferences(MY_PREFS_NAME, MODE_PRIVATE);
String restoredText = prefs.getString("text", null);
if (restoredText != null) {
String name = prefs.getString("name", "HD");
txtEmtiaz.setText(name);
}