Android 如何访问首选项屏幕的所有子项?
我正试图以编程方式取消选中我的应用程序中Android 如何访问首选项屏幕的所有子项?,android,preferences,Android,Preferences,我正试图以编程方式取消选中我的应用程序中首选项屏幕的所有复选框首选项子项。我该怎么做呢?现在无法测试它。。。但我会尝试这样的方式: final ListAdapter adapter = getPreferenceScreen().getRootAdapter(); for (int idx = 0; idx < adapter.getCount(); idx++) { Object object = adapter.getItem(idx); if(object inst
首选项屏幕
的所有复选框首选项
子项。我该怎么做呢?现在无法测试它。。。但我会尝试这样的方式:
final ListAdapter adapter = getPreferenceScreen().getRootAdapter();
for (int idx = 0; idx < adapter.getCount(); idx++) {
Object object = adapter.getItem(idx);
if(object instanceof CheckBoxPreference){
((CheckBoxPreference)object).setChecked(false);
}
}
final ListAdapter=getPreferenceScreen().getRootAdapter();
对于(int idx=0;idx
现在无法测试它。。。但我会尝试这样的方式:
final ListAdapter adapter = getPreferenceScreen().getRootAdapter();
for (int idx = 0; idx < adapter.getCount(); idx++) {
Object object = adapter.getItem(idx);
if(object instanceof CheckBoxPreference){
((CheckBoxPreference)object).setChecked(false);
}
}
final ListAdapter=getPreferenceScreen().getRootAdapter();
对于(int idx=0;idx
找到了一种更简单的方法——对于我的用例来说已经足够了——那就是清除首选项。这可以通过静态方法完成,前提是向其传递了上下文:
PreferenceManager.getDefaultSharedPreferences(context).edit().clear().commit();
找到了一个更简单的方法-足以满足我的用例-那就是清除首选项。这可以通过静态方法完成,前提是向其传递了上下文:
PreferenceManager.getDefaultSharedPreferences(context).edit().clear().commit();