我在首选项中有复选框。如果复选框被选中,我想保持屏幕打开,如果复选框未选中,我不想保持屏幕打开。
我想要这样的东西:
boolean keepScreen = sharedPrefs.getBoolean("chck_screen", false);
if (keepScreen.equals(false)) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
请帮忙。
最佳答案
如果您正在使用 PreferenceActivity 并且在 XML 中声明了带有键“checkbox_preference”的复选框(将其重命名为您拥有的任何名称),您可以这样做:
CheckBoxPreference pref = (CheckBoxPreference) findPreference("checkbox_preference");
pref.isChecked();是否选中返回
此外,您可以为值更改时设置一个监听器
pref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue)
{
boolean checked = Boolean.valueOf(newValue.toString());
//set your shared preference value equal to checked
return true;
}
});
关于java - 如何获取复选框偏好值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9794490/