簡體   English   中英

如何獲取復選框優先級值?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM