[英]How to get checkbox preference value?
我在偏好設置中有復選框。 如果選中復選框,我想保持屏幕打開,如果未選中復選框,則不保持屏幕打開。
我想要這樣的東西:
boolean keepScreen = sharedPrefs.getBoolean("chck_screen", false);
if (keepScreen.equals(false)) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
請幫忙。
如果您正在使用PreferenceActivity並使用鍵“checkbox_preference”(將其重命名為您擁有的任何內容)以XML格式聲明復選框,則可以執行以下操作:
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;
}
});
您還可以使用PreferenceManager.getSharedPreferences().getBoolean(String key, boolean defValue)
來獲取首選項值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.