我知道如何更改CheckBoxPreference
的值,但我無法使其工作於ListPreference
。如何從Android中的java代碼編輯ListPreference值
這是我的個人偏好屏幕是如何構建的:
- 一個
CheckBox
默認 - 一個
ListPreference
選擇默認值以外的顏色。
的ListPreference
與鍵 「titleColor」 定義如下:
CharSequence[] entries = { "Dark grey", "Light grey", "Light red", "Red" };
CharSequence[] entryValues = { "#4c4c4c", "#b5b5b5", "#ab6a68", "#962622" };
final ListPreference color = (ListPreference) findPreference("titleColor");
color.setEntries(entries);
color.setEntryValues(entryValues);
現在,當我選擇一種顏色我這樣做:
color.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
public boolean onPreferenceChange(Preference preference, Object newValue) {
System.out.println("In the onClick method");
System.out.println("change title color");
Editor editor2 = defaultColor.getEditor();
editor2.putBoolean("defaultColor", false);
editor2.commit();
return true;
}
});
這似乎工作,儘管我不確定這是否正確。
現在我一直在嘗試做類似的事情,當我選擇默認顏色,但我無法獲得列表要麼取消選中所有內容,要麼檢查默認顏色。
有什麼想法?
就我而言,ListPreference像字符串值一樣工作。 – Pentium10 2010-07-19 14:22:29