Androidx 首选项 DropDownPreference 立即消失,而 ListPreference 完美运行

问题描述

以完全类似的方法,我使用 androidx DropDownPreference 显示一个下拉菜单供用户选择,点击后它就会消失:

With DropDownPreference

虽然使用 ListPreference 可以正常工作:

with ListPreference

这是我正在使用的代码:

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<Preference android:enabled="false" />
<PreferenceCategory android:title="@string/preferences">
    <DropDownPreference
        android:defaultValue="@string/pref_live_scr_timeout_value_30_sec"
        android:entries="@array/pref_live_scr_timeout_entries"
        android:entryValues="@array/pref_live_scr_timeout_values"
        android:key="pref_live_scr_timeout"
        android:summary="@string/pref_live_scr_timeout_title"
        android:title="@string/pref_live_scr_timeout_title"
        app:useSimpleSummaryProvider="true" />

    <ListPreference
        android:defaultValue="@string/pref_live_scr_timeout_value_30_sec"
        android:entries="@array/pref_live_scr_timeout_entries"
        android:entryValues="@array/pref_live_scr_timeout_values"
        android:key="pref_live_scr_timeout"
        android:summary="@string/pref_live_scr_timeout_title"
        android:title="@string/pref_live_scr_timeout_title"
        app:useSimpleSummaryProvider="true" />

    </PreferenceCategory>
</PreferenceScreen>

array.xml:

<!-- Time-out values for live data screen -->
<array name="pref_live_scr_timeout_entries">
    <item>30 seconds</item>
    <item>1 minute</item>
    <item>2 minutes</item>
    <item>5 minutes</item>
    <item>Never</item>
</array>

<array name="pref_live_scr_timeout_values">
    <item>pref_live_scr_timeout_value_30_sec</item>
    <item>pref_live_scr_timeout_value_1_min</item>
    <item>pref_live_scr_timeout_value_2_min</item>
    <item>pref_live_scr_timeout_value_5_min</item>
    <item>pref_live_scr_timeout_value_never</item>
</array>

任何想法是什么问题? 谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)