1

こんにちは、ユーザーが入力したデータを保存するプロファイル レイアウト ファイルがあります。このレイアウトには、チェックボックス、テキストビュー、スピナーがあります。次に、textviews のようにユーザー プロファイル レイアウト ファイルに表示されます。それらをsharedpreferencesに保存しています。私がやりたいのは、ユーザーがスピナーから選択/保存した文字列値を取得し、それをテキストビューに表示することです。これどうやってするの?

これをどのように実装するのか疑問に思っています:

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

});

また、参照:スピナーの選択された値をどのように取得しますか?

于 2013-01-28T18:52:33.630 に答える
0

TextViewで整数を表示するにはString.valueOf()、またはを使用する必要があります。Integer.toString()例 :

 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 に答える