android - 使用 androidx dropdownPreference 的正确方法是什么?
问题描述
我正在使用下拉首选项,但每次尝试插入时应用程序都会崩溃。应该提交什么 entryValues 和条目?官方文档没有解释 xml 的使用。在 api 25 和 21 上测试。
<androidx.preference.PreferenceCategory app:title="@string/Time">
<androidx.preference.DropDownPreference
android:key="dropdown"
android:title="@string/waitTime"
android:entryValues="@array/planets_array"
android:entries="@array/times"
app:useSimpleSummaryProvider="true"
/>
</androidx.preference.PreferenceCategory>
</androidx.preference.PreferenceScreen>
字符串.xml:
<resources>
<string-array name="planets_array">
<item>Mercury</item>
<item>Venus</item>
<item>Earth</item>
<item>Mars</item>
</string-array>
<integer-array name="times">
<item>5</item>
<item>10</item>
<item>15</item>
<item>20</item>
</integer-array>
</resources>
日志:
Process: com.example.detector, PID: 11439
android.view.InflateException: Binary XML file line #22: Error inflating class androidx.preference.DropDownPreference
...
androidx.preference.PreferenceFragmentCompat.setPreferencesFromResource(PreferenceFragmentCompat.java:377)
at com.example.breathdetector.ui.customization.CustomizationFragment.onCreatePreferences(CustomizationFragment.java:24)
androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1830)
...
Caused by: java.lang.reflect.InvocationTargetException
...androidx.preference.PreferenceFragmentCompat.setPreferencesFromResource(PreferenceFragmentCompat.java:377)
at com.example.breathdetector.ui.customization.CustomizationFragment.onCreatePreferences(CustomizationFragment.java:24)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:160)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2586)
at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:838)
at androidx.fragment.app.FragmentManagerImpl.addAddedFragments(FragmentManagerImpl.java:2100)
at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1874)
任何帮助,将不胜感激。
解决方案
推荐阅读
- java - 在实现抽象工厂时我应该将 DAO 作为 Singleton 还是有更好的方法?
- ios - 构建 xcframework 时架构 arm64 的未定义符号
- python - Python webscraping 到每次具有不同名称的文件
- typescript - 如何根据第一个函数参数使第二个函数参数可选
- javascript - 针对托管在 Bitbucket 中的应用程序的电子自动更新。(Windows 电子打包程序)
- python - 使用Python SDK时如何防止GCS自动解压对象?
- r - R 热图:在 kmeans 聚类热图中添加图例以显示各个模块
- c# - 在切换器中显式删除/关闭应用程序时调用什么方法?
- python-3.x - 通过会话文件的存在进行 Telethon 客户端登录不适用于 plesk 计划任务,但它通过 SSH 正常运行
- android - CameraX 中的对齐线