gpt4 book ai didi

android - 显示android :dialogMessage in a ListPreference dialog

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:16:23 24 4
gpt4 key购买 nike

我想在 ListPreference 对话框中添加一些消息,所以我考虑使用属性 android:dialogMessage。

但是,当我设置此属性时,列表条目(使用 android:entries 和 android:entryValues 设置)不再显示在对话框中(这似乎是一个已知错误,因为我可以在其他地方读到它)

所以看来我可能需要制作一个特殊的自定义 ListPreference 以便同时显示 dialogMessage 和列表条目。

我考虑创建一个自定义类 MyListPreference,为此目的稍微修改一下。我会覆盖 onCreateDialogView() 来进行更改。但是我有点不确定要进行的最干净的更改,因为我可以看到两种选择:

备选方案 1 - 创建自定义 XML 布局我会复制 ListPreference 对话框的默认 xml 布局并添加一个 textView。在 onCreateDialogView() 中,我会膨胀这个自定义布局。

备选方案 2 - 即时修改 View 在 onCreateDialogView() 中,我会调用 super.onCreateDialogView() 并动态地将一个 textView 添加到它返回的 View 中。

问题:您建议做什么?如果备选方案 1 最好,我在哪里可以找到 ListPreference 对话框的默认 XML 布局以便我可以对其进行自定义?

谢谢你的帮助

最佳答案

我会先尝试备选方案 #2。我刚刚开发了一个包含大约 50 个设置的巨大设置屏幕,我发现在 Preference 的 onCreateView() 中修改 View 非常简单。

@Override
protected View onCreateView(ViewGroup parent) {
View v = super.onCreateView(parent);
((TextView) v).setText(this.text);
return v;
}

我打赌它与 ListPreference 的对话框相同。

关于android - 显示android :dialogMessage in a ListPreference dialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17277920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com