主题行动吧

时间:2014-11-19 17:37:03

标签: android android-studio

我创建了一个超级简单的主题:

<style name="MyTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">@color/UglyRed</item>
    <item name="android:textColor">@color/RepulsiveGreen</item>
</style>

在清单中,我为我的活动设置了这个主题。 问题是操作栏以纯灰色显示,带有白色文本。看来我的主题设置完全被忽略了。

当我向主题添加其他设置时(例如活动的主要文字颜色),它可以正常工作。只有操作栏才能正确上色......

2 个答案:

答案 0 :(得分:1)

对于AppCompat主题,您可以跳过android前缀:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="actionBarStyle">@style/MyActionBar</item>
    <item name="actionMenuTextColor">#0000FF</item>
</style>

<style name="MyActionBar" parent="Widget.AppCompat.Light.ActionBar">
    <item name="background">@drawable/annoying_red</item>
    <item name="titleTextStyle">@style/TitleStyle</item>
</style>
<style name="TitleStyle" parent="TextAppearance.AppCompat">
    <item name="android:textColor">#00FF00</item>
</style>

annoying_red.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#FF0000"/>
</shape>

答案 1 :(得分:0)

仔细检查您是否以编程方式设置了操作栏主题(例如,在您的activity.java中)。

另外,请仔细检查您的activity.xml是否有可能覆盖清单对操作栏的更改的任何内容。

相关问题