在扩展ActionBarActivity的活动上更改操作栏的背景

时间:2015-03-26 19:53:21

标签: android xml android-actionbar android-actionbaractivity

我正在尝试更改扩展ActionBarActivity的活动的操作栏背景颜色。到目前为止,我的styles.xml看起来像这样

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

<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
    <item name="android:background">#ff2b8bff</item>
</style>

我打电话给我的清单中的风格

 android:theme="@style/AppTheme"

问题是操作栏总是灰色的,它永远不会改变我指定的颜色。我知道有很多类似这样的问题的信息,但它们都没有对我有效。我只是想知道我错过了什么。

2 个答案:

答案 0 :(得分:1)

这应该做:

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

<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@color/red</item>
    <item name="background">@color/red</item>
</style>

来自here

答案 1 :(得分:0)

  

您遇到此问题的原因是您的活动   尝试应用对话框主题是在扩展ActionBarActivity   这需要应用AppCompat主题。

     

将Java继承从ActionBarActivity更改为Activity和   将对话框主题保留在清单中。

来源:https://stackoverflow.com/a/21815015/3498044