Я считаю, что я правильно инициализирует настройки из XML. Экран "Мои настройки" также работает правильно и отображает правильные пользовательские настройки.
Однако при вызове first этого экрана настроек никто не установлен (флажок) или выбран (список). Это, конечно, смущает пользователя, поскольку оно не отражает текущее (стандартное/начальное) значение.
Поскольку все, что я делаю для вызова экрана настроек,
startActivity(new Intent(this, EditPreferences.class));
И мой класс EditPreferences
содержит только:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.usersettings);
}
Я не уверен, где и как сказать, чтобы предварительно инициализировать визуальный дисплей с настройкой по умолчанию.
У меня есть такая догадка, что все, что мне не хватает, это одна строка, но я не знаю, где: XML файл? переопределить метод в EditPreferences
? Другое?
Не можете ли вы определить значение по умолчанию в самом XML?
<CheckBoxPreference ...
android:defaultValue="true"
... />
Вы можете указать значение по умолчанию для предпочтения (например, в вашем xml-макете):
<EditTextPreference android:defaultValue="whatever" />
<ListPreference>
. Что мне не хватает?
<ListPreference>
(я пробовалandroid:defaultValue="0"
). Что такое «трюк» для<ListPreference>
?