5

如果我將TextView放在自定義對話框中,默認情況下文本將爲黑色。自定義支持對話框片段文本是錯誤的顏色

不幸的是,支持片段對話框背景是深灰色的。灰色的黑色非常難以閱讀。

我可以將TextView更改爲白色或類似android:textColor="?android:attr/textColorPrimaryInverseDisableOnly"。 但新的android(Holo Light)上的對話框是白色的。所以它會白色的白色。

我可以使用黑客就像在老版本的Android上強制它是白色的,並迫使它在新版Android上黑屏,但我寧願找到更優雅的解決方案。

有沒有辦法將TextView更改爲模仿通常放在支持DialogFragment上的相同文本?如果有問題,我正在使用Action Bar Sherlock。

回答

0

如果你使用ActionBarSherlock,我猜你也支持舊設備。可悲的是,舊手機不會顯示任何Holo對話框,只有老式的醜陋對話框(在許多手機上,它們也會被製造商嚴格定製)。因此不能認爲你的Dialog會是Light。

這裏只有兩件事情可以做:

+0

我已經在使用自定義對話框。在無聊的舊兼容性對話框中它看起來很好,但在自定義對話框上看起來不對。改變背景是一種可能性,但是我不得不將所有現有的對話框切換到自定義背景。 – Muz 2013-02-26 03:37:06

3

試試這個

alertDialogBuilder.setInverseBackgroundForced(true) 

工作正常,在我的情況在預蜂窩設備和較新的。標題仍以較暗的顏色顯示,但主文本在所有設備上都清晰可讀。

+0

這個問題很久以前,我也不記得我試圖用它做什麼。所以這可能需要一段時間才能測試這個答案:) – Muz 2013-11-18 05:59:09

+0

謝謝!這對我有用。 – 2013-11-19 16:47:56

+0

這適用於我。此功能反轉舊設備上的背景色,而對較新的設備沒有影響。 – 2014-09-11 03:23:10

相關問題