我相信我是正确的initializing preferences from XML。我的首选项屏幕也可正常工作,并反映用户选择的正确设置。
然而,在第一次调用该首选项屏幕时,没有选中任何设置(复选框)或选中(列表)。当然,这会使用户感到困惑,因为它不反映当前(默认/初始)值。
因为我所做的只是调用首选项屏幕
startActivity(new Intent(this, EditPreferences.class));
我的EditPreferences
课程只包含:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.usersettings);
}
我不知道在哪里或如何告诉它使用默认设置预先初始化视觉显示。
我有这种预感,我所遗漏的只是一条线,但我不知道在哪里:XML文件?覆盖EditPreferences
中的方法?其他
答案 0 :(得分:1)
您可以在首选项上指定默认值(例如,在xml布局中):
<EditTextPreference android:defaultValue="whatever" />
答案 1 :(得分:1)
你不能在XML本身中定义默认值吗?
<CheckBoxPreference ...
android:defaultValue="true"
... />