如何更新我的PreferenceActivity?更新PreferenceActivity上的複選框
我在SharedPreferences中保存了活動中CheckBox的值(在這種情況下,爲true)。即使我去其他活動,我可以看到這是真的。但是,當我進入我的PreferenceActivity時,複選框未被選中,它是錯誤的。所以我想知道的是,如何在我的PreferenceActivity中加載我的SharedPreferences,以及如何更新CheckBox(加載值,如果是true,則將CheckBox設置爲選中狀態)。
我應該這樣加載嗎?
Shared Preferences SP = getSharedPreferences(DATA, MODE_PRIVATE);
fw = SP.getBoolean("fw", false);
但是,如何設置CheckBox true或false,因爲我不能使用findViewById?
編輯:
活動,我保存複選框值:
Editor edit = SP.edit();
edit.putBoolean("fw", fwbt.isChecked());
edit.commit();
我優先考慮的XML文件:
<CheckBoxPreference
android:title="CheckBox FW"
android:key="fw"
android:summary="Estado do CheckBox" />
我的偏好活動:
public class Prefs extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.prefs);
//Don't know what to do here...
}
}
它沒有工作。我想我可能已經表現得很糟糕。我在SharedPreferences中保存了一個活動中CheckBox的值(在這種情況下,爲true)。即使我去其他活動,我可以看到這是真的。但是,當我進入我的PreferenceActivity時,複選框未被選中,它是錯誤的。所以我想知道的是,如何在我的PreferenceActivity中加載我的SharedPreferences,以及如何更新CheckBox(加載值,如果是true,則將CheckBox設置爲選中狀態)。 –
您是否正在使用'addPreferencesFromResource(R.xml.pref_classic_appearance)'加載包含'PreferenceScreen'的XML文件,然後'CheckBoxPreference'的狀態與存儲到'DATA'的狀態不匹配?您是否在該配置文件中爲「CheckBoxPreference」定義了鍵「fw」? – Rayne
我用我的部分代碼編輯了我的帖子。這是相同的關鍵,我叫'addPreferencesFromResource(R.xml.mypreferencexmlfile);' –