こんにちは、アプリを開くたびにチェックボックスを同じ状態に保ちたい..「ja/nein」文字列でこれを取得します.文字列は、アプリケーションを閉じて再度開くと...しかし、私のチェックボックス.setchecked(true/false) 機能しません..助けてください
public void changeVisitStatus(){
SharedPreferences visitStatus = mData.getVisitStatus();
SharedPreferences.Editor editor = visitStatus.edit();
if(visitStatus.getString(mData.getVisitKey(), "nein").equals("nein")){
editor.putString(mData.mVisitKey, "ja");
editor.commit();
mGUI.mBtnVisit.setChecked(true);
}
else{
editor.putString(mData.mVisitKey, "nein");
editor.commit();
mGUI.mBtnVisit.setChecked(false);
}
mGUI.getVisitStatus().setText(visitStatus.getString(mData.mVisitKey, "Nein"));
}
編集:別の方法で試しました..もっと良いと思いましたが、うまくいきません..
public void changeVisitStatus(){
SharedPreferences visitStatus = mData.getVisitStatus();
SharedPreferences.Editor editor = visitStatus.edit();
if(visitStatus.getString(mData.getVisitKey(), "nein").equals("nein")){
editor.putString(mData.mVisitKey, "ja");
editor.putBoolean("isChecked", true);
editor.commit();
}
else{
editor.putString(mData.mVisitKey, "nein");
editor.putBoolean("isChecked", false);
editor.commit();
}
mGUI.getVisitStatus().setText(visitStatus.getString(mData.mVisitKey, "Nein"));
}
これをアクティビティの onCreate(Bundle savedInstanceState) に入れます
mGUI.mBtnVisit.setChecked(mData.getVisitStatus().getBoolean("isChecked", false));