使用AppCompat支持包时自定义ActionBar颜色的要点

文章仅作自己记录使用。转载请注明。
1、自定义一个主题,继承自Theme.AppCompat.Light.DarkActionBar
2、自定义一个actionBarStyle继承自Widget.AppCompat.Light.ActionBar
3、在自定义主题中引用自定义的actionBarStyle
4、在application 节点中更改为自定义的主题。

下面来看代码:
自定义的主题和actionBarStyle
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="MyActionBarTheme"
           parent="Theme.AppCompat.Light.DarkActionBar">
           <item name="actionBarStyle">@style/MyBackground</item>
    </style>

    <style name="MyBackground" parent="Widget.AppCompat.Light.ActionBar">
        <item name="background">@drawable/actionbar</item>
    </style>
    
</resources>

这里需要注意的只有一点,在此之前,我看到网络上有部分文章是写成
<item name="android:actionBarStyle">@style/MyBackground</item>
和 <item name="android:background">@drawable/actionbar</item>
的,但是这样的写法在我这里无效,大家可以自行尝试,actionBar的图片资源在底部有下载
最后推荐一个在线生成actionBar的网站
Android Action Bar Style Generator

猜你喜欢

转载自xlkgh.iteye.com/blog/2244444