1

您好,我有一个配置文件布局文件,其中保存了用户输入的数据。此布局具有复选框、文本视图和微调器。然后它将在我的用户配置文件布局文件中查看,就像在 textviews 中一样。我将它们保存到共享首选项。我想做的是检索用户从微调器中选择/保存的字符串值,将其显示在文本视图中。我怎样才能做到这一点?

我想知道如何实现这一点:

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

任何帮助都非常感谢。谢谢。

我收到错误:

ResourcesNotFoundException:字符串资源 ID

4

4 回答 4

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

});

另请参考:如何获得 Spinner 的选定值?

于 2013-01-28T18:52:33.630 回答
0

您将需要使用String.valueOf()Integer.toString()在 TextView 中显示 Integer 。例子 :

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

或者

tvbloodtype.setText(Integer.toString(prefs.getInt("bloodtype",0)));
于 2013-01-28T18:52:54.613 回答
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
于 2013-01-28T18:54:36.453 回答
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", ""));
于 2013-01-28T19:03:45.597 回答