当我点击Buttom Navigation Bar时,我试图 此项目中的文本信息存储在首选项中,并且我已经定义了LOG 这是显示的日志信息 我做了很多研究,但是没有得到正确的答案。
这是单击时导航项中的代码:
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));
这是LOG信息,我不明白LOG在说什么:
/POPI: txt in main2 :android.widget.TextView{1e42d479 V.ED.... ......ID 0,0-0,0 #7f09016d app:id/txtEmtiaz}
我不想告诉发生了什么事。我想知道每个单词和数字的含义。
答案 0 :(得分:3)
您需要从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());
答案 1 :(得分:2)
尝试一下
您正在使用没有名称的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);
}
答案 2 :(得分:1)
您正在尝试打印TextView。您要打印TextView的内容,请使用:
txtEmtiaz.getText().toString()