如何从共享偏好中检索微调器值? ANDROID

时间:2013-01-28 18:44:20

标签: android spinner sharedpreferences

您好我有一个配置文件布局文件,其中保存了用户输入的数据。此布局包含复选框,textviews和微调器。然后它将在我的userprofile布局文件中查看,如在textviews中。我将它们保存到共享偏好中。我想要做的是检索用户从微调器中选择/保存的String值,将其显示在textview中。我怎么能这样做?

我想知道如何实现这个:

 tvbloodtype.setText(prefs.getInt("bloodtype",0));

真的很感激任何帮助。感谢。

我收到了错误:

ResourcesNotFoundException:字符串资源ID

4 个答案:

答案 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);
 }

});

另请参考:How do you get the selected value of a Spinner?

答案 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", ""));