列表首选项默认值不起作用 Android studio
List Preference default value not working Android studio
我正在尝试为我的应用程序中的列表首选项设置默认值,但我在使用默认值时遇到了问题,因为当我尝试 运行 应用程序时我选择了默认值在 运行 时间内未选择两个列表中的首选项。这是我的 xml 代码:
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory app:title="@string/display_header">
<ListPreference
app:key="language"
android:title="@string/language_title"
app:summary="@string/en"
android:entries="@array/lang_entries"
android:entryValues="@array/lang_values"
android:defaultValue="@string/en"
/>
<ListPreference
app:key="display"
app:title="@string/display_mode_title"
app:entries="@array/display_entries"
app:entryValues="@array/display_values"
app:summary="@string/automatic"
android:defaultValue="@string/automatic"/>
</PreferenceCategory>
</PreferenceScreen>
我尝试卸载并重新安装该应用程序,但没有成功。我还检查了我在默认值中使用的字符串名称是否正确,并且我还确保默认值与条目字符串数组中的名称匹配。请帮我解决这个问题
我觉得defaultValue
是一个number/index的选择。
见this post。
我刚刚发现我必须将 android:defaultValue
行替换为 app:defaultValue
并且我必须将相应的值传递给将成为运行时默认值的条目。
我正在尝试为我的应用程序中的列表首选项设置默认值,但我在使用默认值时遇到了问题,因为当我尝试 运行 应用程序时我选择了默认值在 运行 时间内未选择两个列表中的首选项。这是我的 xml 代码:
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory app:title="@string/display_header">
<ListPreference
app:key="language"
android:title="@string/language_title"
app:summary="@string/en"
android:entries="@array/lang_entries"
android:entryValues="@array/lang_values"
android:defaultValue="@string/en"
/>
<ListPreference
app:key="display"
app:title="@string/display_mode_title"
app:entries="@array/display_entries"
app:entryValues="@array/display_values"
app:summary="@string/automatic"
android:defaultValue="@string/automatic"/>
</PreferenceCategory>
</PreferenceScreen>
我尝试卸载并重新安装该应用程序,但没有成功。我还检查了我在默认值中使用的字符串名称是否正确,并且我还确保默认值与条目字符串数组中的名称匹配。请帮我解决这个问题
我觉得defaultValue
是一个number/index的选择。
见this post。
我刚刚发现我必须将 android:defaultValue
行替换为 app:defaultValue
并且我必须将相应的值传递给将成为运行时默认值的条目。