Я пробую очень простую PreferenceActivity, и она отлично работает с EditTextPreference, но всегда выдает эту ошибку, когда я добавляю ListPreference (строка 16 — это строка ListPreference):
Вот мой файл res/xml/preferences.xml:
Мои предпочтенияАктивность:
<?xml version="1.0" encoding="utf-8"?>
<EditTextPreference
android:title="test"
android:summary="summary test"
android:key="testKey"/>
<ListPreference android:key="languagePref"
android:entries="@array/menu_pref_language_titles"
android:summary="bla bla"
android:entryValues="@array/menu_pref_language_codes"
android:title="@string/pref_language" />
Мои строки.xml:
public class PreferencesActivity extends PreferenceActivity {
@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
}
И мой манифест:
<string name="pref_language">Language:</string>
<string name="pref_language_default">default</string>
<string-array name="menu_pref_language">
<item>Device default</item>
<item>English</item>
<item>Portuguese</item>
</string-array>
<string-array name="menu_pref_language_codes">
<item>default</item>
<item>en</item>
<item>pt</item>
</string-array>
Мои целевые SDK от 11 до 18 (на данный момент), и он не работает на 18 (у меня проблемы с моими эмуляторами). Я знаю, что мог бы использовать PreferenceFragment, но я намерен использовать более старые SDK позже.
<activity
android:name=".PreferencesActivity"
android:label="@string/action_settings"
android:launchMode="standard"
>
</activity>
Есть предположения?
В файле настроек у вас есть: