将ActionBar区域的颜色更改为绿色

时间:2015-08-11 19:11:21

标签: android android-actionbar android-support-library

我是Android ActionBar的新手。目前我正在尝试在ActionBar区域创建菜单,但它总是以黑色显示。任何人都可以帮我改变ActionBar的背景颜色吗? 在这里,我附上我的作品请看看,

的themes.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme"
           parent="Theme.AppCompat">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
    </style>

    <!-- ActionBar styles -->
    <style name="MyActionBar"
           parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@color/actionbar_background</item>
    </style>
</resources>

MainActivity.java

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ThemeUtil.onActivityCreateSetTheme(this);
    setContentView(R.layout.activity_main);

}

color.xml

    <color name="actionbar_background">#008080</color> 

的manifest.xml

    android:theme="@style/CustomActionBarTheme" >

1 个答案:

答案 0 :(得分:2)

不推荐使用

ActionBarActivity,您应该使用AppCompatActivity

如果清单文件中CustomActionBarTheme设置为android:theme,则无需使用ThemeUtil。从MainActivity中删除它。然后,重新编写styles.xml,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme" parent="Theme.AppCompat">
        <item name="colorPrimaryDark">/*This will tint the status bar on lollipop devices*/</item>
        <item name="colorPrimary">@color/actionbar_background</item>
    </style>
</resources>

只要您的样式扩展Theme.AppCompat.*colorPrimary就会自动设置ActionBar颜色。在Lolllipop设备上,colorPrimaryDark设置状态栏颜色。 accent设置某些小部件项的颜色。