簡體   English   中英

通過為活動使用SharedPreferences實現FLAG_KEEP_SCREEN_ON

[英]Implementing FLAG_KEEP_SCREEN_ON by using SharedPreferences for an Activity

我想讓屏幕始終保持打開狀態。 這將適用於使用以下代碼的MainActivity.java:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

這是我的代碼:

xml \\ preferences.xml

<CheckBoxPreference
        android:key="prefKeepScreenOn"
        android:title="@string/prefs_screen_on"
        android:summary="@string/summ_screen_on"
        android:defaultValue="false" />

SettingsActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);
}

MainActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main); // By using SharedPreferences,
                                            // this screen should never turned off.
}

如您所見,我有一個具有DefaultValue =“ false”的CheckBoxPreference。 當值更改為“ true”或選中CheckBoxPreference時,屏幕將永遠不會關閉,並使用以下代碼:

我試圖在Google中搜索有關SharedPreferences的教程,但沒有發現任何實現方法。 我不了解SharedPreferences,因為我是新手。 我非常感謝任何想幫助我的人。

您可以在“活動”中這樣做。

    SharedPreferences myPreference=PreferenceManager.getDefaultSharedPreferences(this);

   if(myPreference.getBoolean("prefKeepScreenOn", false)) {

       getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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