5

如果我TextView在自定义对话框中放入 a ,默认情况下文本将是黑色的。

不幸的是,支持片段对话框的背景是深灰色的。灰色上的黑色很难阅读。

我可以将其更改TextView为白色或类似的东西android:textColor="?android:attr/textColorPrimaryInverseDisableOnly"。但是新安卓(Holo Light)上的对话框是白色的。所以它将是白底白字。

我可以使用一种技巧,例如在旧版本的 Android 上强制它为白色,并在新版本的 Android 上强制它为黑色,但我宁愿找到一个更优雅的解决方案。

有没有办法改变TextView以模仿通常放在支持上的相同文本DialogFragment?如果这很重要,我正在使用 Action Bar Sherlock。

4

2 回答 2

3

尝试这个

alertDialogBuilder.setInverseBackgroundForced( true )

在我的情况下,在蜂窝之前的设备和较新的设备上工作正常。标题仍以较深的颜色显示,但正文在所有设备上都清晰可读。

于 2013-11-17T14:06:49.843 回答
0

如果您使用的是 ActionBarSherlock,我猜您也支持旧设备。可悲的是,旧手机不会显示任何 Holo Dialog,只会显示旧的丑陋 Dialog(在许多手机上,它们也会被制造商大量定制)。因此不能假设你的对话框会很轻。

你只能做两件事:

于 2013-02-26T02:54:09.777 回答