【发布时间】:2014-08-05 07:36:14
【问题描述】:
我正在通过在styles.xml 中定义主题来自定义我的安卓应用程序。我想为我的应用程序的所有文本应用基本文本颜色,但我想将AlertDialog 的外观保持为默认值(Holo.Light)。
styles.xml
<resources>
<style name="AppTheme" parent="android:Theme.Holo.Light.NoActionBar">
<item name="android:windowNoTitle">true</item>
<item name="android:textColor">@android:color/holo_red_dark</item>
<item name="android:alertDialogTheme">@style/AlertDialogStyle</item>
</style>
<style name="AlertDialogStyle" parent="@android:style/Theme.Holo.Light.Dialog">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@style/DialogWindowTitle</item>
</style>
<style name="DialogWindowTitle">
<item name="android:maxLines">1</item>
<item name="android:scrollHorizontally">true</item>
<item name="android:textAppearance">@style/DialogWindowTitleAppearance</item>
</style>
<style name="DialogWindowTitleAppearance" parent="@android:style/TextAppearance.Holo.DialogWindowTitle">
<item name="android:textColor">@android:color/holo_purple</item>
</style>
</resources>
但是,AppTheme 中定义的颜色会覆盖紫色:
如果我删除AppTheme 中的<item name="android:textColor">@android:color/holo_red_dark</item> 行,标题的文本颜色会正确更改。
所以我的问题是:如何为我的应用主题定义文本颜色,同时为对话框标题文本设置另一种颜色(或保留系统默认颜色)?
【问题讨论】:
标签: android android-alertdialog android-theme