I have a similar problem like this, so I proceeded according to the proposed solution and added this line of code to onCreate:
PreferenceManager.setDefaultValues(this, R.xml.settings, false);
Unfortunately the problem still occurs, if the user hasn’t altered the settings, still the default-value (true) from
mPreferences.getBoolean(String.valueOf(day_of_week), true)
is used instead of the default value from the XML.
One proposed to change the default-value parameter of getBoolean() to null, but this code crashes the app:
mPreferences.getBoolean(String.valueOf(day_of_week), (Boolean) null)
Any advice? Thanks in advance!
Finally it works! I really put much time and effort into searching for the error and as soon as I post here, I find it out alone ~~ thanks guys for helping me with this one.
If ever anyoneelse has this problem, the solution goes like this: Change the default Value of
getBoolean()from true to false like so:mPreferences.getBoolean(String.valueOf(day_of_week), true)-> doesn’t work, it is always true no matter what happened in the XMLmPreferences.getBoolean(String.valueOf(day_of_week), false)-> it works! It’s the correct default Value from the XMLI really don’t understand the logic into doing this, but now it works perfectly. Seems a bit like a bug to me.