您好我有一个配置文件布局文件,其中保存了用户输入的数据。此布局包含复选框,textviews和微调器。然后它将在我的userprofile布局文件中查看,如在textviews中。我将它们保存到共享偏好中。我想要做的是检索用户从微调器中选择/保存的String值,将其显示在textview中。我怎么能这样做?
我想知道如何实现这个:
tvbloodtype.setText(prefs.getInt("bloodtype",0));
真的很感激任何帮助。感谢。
我收到了错误:
ResourcesNotFoundException:字符串资源ID
答案 0 :(得分:1)
获得微调器对象后,可以调用yourSpinner.OnItemSelectedListener()来获取所选对象。然后,您可以将项目保存在TextView
中yourSpinner.OnItemSelectedListener(new OnItemSelectedListener {
public void onItemSelected(AdapterView <? > parentview, View v, int position, long id) {
curPos = position;
String selected = parentView.getItemAtPosition(position).toString();
tvbloodtype.setText(selected);
}
});
答案 1 :(得分:0)
您需要使用String.valueOf()
或Integer.toString()
在TextView中显示Integer。示例:
tvbloodtype.setText(String.valueOf(prefs.getInt("bloodtype",0)));
或强>
tvbloodtype.setText(Integer.toString(prefs.getInt("bloodtype",0)));
答案 2 :(得分:0)
写下喜欢
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean(key, value); //key="YOUR_KEY_STRING" //value = your boolean value
editor.apply();
从偏好中读取
Boolean yourBoolean = prefs.getBoolean("YOUR_KEY_STRING",false); //false = value, if value wasn t set
答案 3 :(得分:0)
每当您将值保存到sharedPreferences时。
SharedPreferences prefs= getSharedPreferences("prf", MODE_PRIVATE);
SharedPreferences.Editor edit = prefs.edit();
edit.putString("bloodtype", spinner.getSelectedItem().toString());
edit.commit();
当你正在重建时
tvbloodtype.setText(spinner.getString("bloodtype", ""));