多くの試行錯誤の後、私はこの質問をすることにしました。ラジオ・グループIDを保存できません。ラジオ・ボタンを使用するアクティビティに戻ると、すべてが空です。ここでラジオグループが正しく保存されない
私のコードです:
public class Random extends Activity implements RadioGroup.OnCheckedChangeListener, OnClickListener {
... ...
これは私が
public void onCheckedChanged (RadioGroup group, int checkedId) {
int profileGroup_CheckId = profileGroup.getCheckedRadioButtonId();
int configGroup_CheckId = configGroup.getCheckedRadioButtonId();
SharedPreferences profileGroupPrefs = getSharedPreferences("profileGroupPrefs", MODE_WORLD_READABLE);
SharedPreferences.Editor prefsEditor = profileGroupPrefs.edit();
prefsEditor.putInt("profileGroup_CheckId", profileGroup_CheckId);
prefsEditor.putInt("configGroup_CheckId", configGroup_CheckId);
prefsEditor.commit();
}
確認ラジオボタンのIDをコミットし、私はこの中に追加した方法ですonCreate
public void onCreate(Bundle savedInstanceState) {
SharedPreferences profileGroupPrefs = this.getSharedPreferences("profileGroupPrefs", MODE_WORLD_READABLE);
profileGroupPrefs.getInt("profileGroup_CheckId", 0);
profileGroupPrefs.getInt("configGroup_CheckId", 0);
ここで、私のappのshared_prefsの中に保存されている値AREから、profileGroup.xmlをチェックしていますが、返信するとラジオボタンはチェックされません。
私はここにユーザーによってリストされた他の多くの方法を試しましたが、何も働いていません。助けていただければ幸いです。
このアクティビティに戻った後は、あなたがonResume()/ onCreate()に保存した値を使用して戻したのですか?私はあなたがsharedpreferencesから値をとってそれらをどこに置くかわかりません。 –
申し訳ありませんが、間違ったコードを貼り付けました。私は私の答えを編集しました。私の下に何があるかをもう一度見てください。 –
( "profileGroupPrefs"、MODE_WORLD_READABLE)読み込みが書き込み不可能なのはなぜですか? onResume()はどこですか?通常はインスタンスの状態をonPause()に保存します。 –