我想在 ListPreference 对话框中添加一些消息,所以我考虑使用属性 android:dialogMessage。
但是,当我设置此属性时,对话框中不再显示列表条目(使用 android:entries 和 android:entryValues 设置)(这似乎是一个已知的错误,因为我可以在其他地方读到它)。
所以看来我可能需要制作一个特殊的自定义 ListPreference 才能同时显示 dialogMessage 和列表条目。
我考虑创建一个自定义类 MyListPreference 将为此目的稍作修改。我会覆盖 onCreateDialogView() 来进行更改。但是,我有点不确定要做出的最干净的更改,因为我可以看到两种选择:
备选方案 1- 创建自定义 XML 布局 我将复制 ListPreference 对话框的默认 xml 布局并添加一个 textView。在 onCreateDialogView() 我会膨胀这个自定义布局。
备选方案 2- 即时修改视图 在 onCreateDialogView() 中,我将调用 super.onCreateDialogView() 并动态地将 textView 添加到它返回的视图中。
问题:你建议做什么?如果备选方案 1 是最好的,我在哪里可以找到 ListPreference 对话框的默认 XML 布局以便我可以自定义它?
谢谢您的帮助