我有一個像this類似的問題,所以我根據提出的解決方案進行,並加入這行代碼的onCreate:Android的首選項:不正確的默認值,儘管「setDefaultValues」
PreferenceManager.setDefaultValues(this, R.xml.settings, false);
不幸的是,問題仍然發生時,如果用戶還沒有從
mPreferences.getBoolean(String.valueOf(day_of_week), true)
改變了設置,仍然是默認值(真)代替所使用的DEF的XML的價值。
一個建議getBoolean()的默認值的參數更改爲空,但是這個代碼崩潰的應用程序:
mPreferences.getBoolean(String.valueOf(day_of_week), (Boolean) null)
有什麼建議?提前致謝!
你在'settings.xml'中設置了'android:defaultValue =「default」'嗎?這行應該添加到你的主要活動onCreate中,而不是你的設置。 – Knickedi
不,我將android:defaultValue設置爲「true」或「false」。 setDefaultValues()函數位於我的主Activity的onCreate中,而不是在設置 – JonEasy
@JhonnyR,我只是浪費了幾個小時跟蹤它。我同意這是一個錯誤。人們應該修改這篇文章,以便在未來拯救像我這樣的人。 – Brandyn