Don*_*rty 18 android default-value checkboxpreference
我有以下XML代码CheckBoxPreference:
<CheckBoxPreference
android:key="pref_boot_startup"
android:title="Auto start"
android:defaultValue="true" />
Run Code Online (Sandbox Code Playgroud)
但是,当我在代码中检索首选项时,值为false.
sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
boolean autoStart = sharedPreferences.getBoolean("pref_boot_startup", true);
Run Code Online (Sandbox Code Playgroud)
我的autoStart变量返回false.
这有什么特别的原因吗?我错过了将默认值设置为的步骤true吗?
小智 35
您必须先设置默认值:
@Override
protected void onCreate()
{
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
boolean autoStart = sharedPreferences.getBoolean("pref_boot_startup", true);
{...}
}
Run Code Online (Sandbox Code Playgroud)