正如上面的标题所说,有没有办法从java代码设置首选项的默认值?
如果从xml端完成,它应该是android:defaultValue。
但是,如何从java端做到这一点??
THX寻求帮助
答案 0 :(得分:2)
不幸的是,首选项XML中指定的默认值仅适用于使用PreferenceActivity
及其UI的情况。但是,如果您查看SharedPreferences
对象,则所有get
方法都允许您指定一个默认值,以便在首选项尚未包含值时进行检索。现在,您可以使用xml文件中的常量将首选项XML和Java默认值组合在一起。
例如,在资源XML中声明<string>
常量,然后您可以将其用作XML中的默认值,如defaultValue="@string/myDefaultValue"
。然后,在您的Java代码中,您可以这样做:
sharedPrefs.getString("stringPreference", getString(R.string.myDefaultValue));