Sep*_*phy 2 android listpreference
我知道如何改变a的值CheckBoxPreference,但我不能让它为a工作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);
Run Code Online (Sandbox Code Playgroud)
现在,当我选择一种颜色时,我这样做:
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;
}
});
Run Code Online (Sandbox Code Playgroud)
这似乎有效,但我不确定这样做是否合适.
现在,当我选择默认颜色时,我一直在尝试做类似的事情,但是我无法取消列表以取消选中所有内容或检查默认颜色.
任何的想法?
在以下情况下CheckBox:
如果你有一个默认的颜色CheckBox,它将被修复使用android:dependency,但由于你没有它,我想这是唯一的方法.
与之相关ListPreference,非常相似:
ListPreference lp = (ListPreference)findPreference("listPreference_key");
lp.setValue("");
Run Code Online (Sandbox Code Playgroud)
您可以查看文档以了解可用的方法.
| 归档时间: |
|
| 查看次数: |
8517 次 |
| 最近记录: |