我有一个自定义DialogPreference对话有它的布局设置了一个RelativeLayout的,它包含以下内容:Android的自定义对话框的TextView和背景颜色
- 复选框
- 的TextView
- 文本字段
这在Android 4.0+中很好,因为我们使用的主题是Theme.Light,所以对话框的背景颜色是白色,默认文本是黑色的用于复选框标签, TextView中。然而,在2.3.3中,背景颜色是深灰色,所以很难看到文字......但是主题仍然是Theme.Light。
我认为制作自定义对话框是必要的,因为复选框启用/禁用文本字段。目前,我正在为此Dialog白色的相关布局制作背景颜色......但我不太喜欢这种解决方案,因为有些情况下2.3.3上的某些其他手机可能没有白色作为默认对话框背景...
有没有更好的方法来解决这个问题?
我发现这个人有同样的问题:Custom Support Dialog Fragment text is the wrong color
另外的问题:Android: Issue with showing dialog from Theme.Light activity
编辑:附截图。这是在运行2.3.3的LG Optimus 2X上的样子。在我的同事的三星Galaxy也运行2.3.3,背景更暗,所以你几乎看不到文字。
您可以简单地覆盖自定义主题中的对话框背景,甚至使用资源限定符提供2.3.3所需的颜色。无论如何:请张贴屏幕截图,显示您遇到的问题。 – 2013-03-24 21:26:59
我想保留操作系统的默认样式...我不想使用1个自定义主题,以便2.3.3和4.0+中的对话框将具有相同的样式...如果这是不可能的,那么是的,这是我猜我会做什么。 – 2013-03-24 21:48:57