使用style修改ActionBar的标题和Menu字体颜色及大小

Posted Cloud_Castle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用style修改ActionBar的标题和Menu字体颜色及大小相关的知识,希望对你有一定的参考价值。

逻辑上来说就是继承系统自带主题后,对其中想要自定义的部分覆盖重写;

比如下面的代码就是在 Theme.AppCompat.Light.DarkActionBar 这个主题的基础上扩展。你的项目中可能用的不是这个,但逻辑是一样的。


然后注意一点是如果继承的是AppCompat,很多字段应该用<item name="actionBarStyle">这种形式,否则则是<item name="android:actionBarStyle">。

主要需要覆盖的属性包括:actionBarStyle、actionMenuTextColor、actionMenuTextAppearance:

    <style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:windowContentOverlay">@null</item>

        <!-- Support library compatibility -->
        <item name="actionBarStyle">@style/CustomActionBar</item>
        <item name="actionMenuTextColor">@color/common_white</item>
        <item name="actionMenuTextAppearance">@style/CustomActionBarMenu</item>
    </style>

    <!-- ActionBar styles -->
    <style name="CustomActionBar" parent="@style/Widget.AppCompat.ActionBar.Solid">
        <item name="titleTextStyle">@style/CustomActionBarTitle</item>
    </style>

    <!-- ActionBar title text -->
    <style name="CustomActionBarTitle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
        <item name="android:textColor">@color/common_white</item>
        <item name="android:textSize">16sp</item>
    </style>

    <!-- ActionBar menu text -->
    <style name="CustomActionBarMenu">
        <item name="android:textSize">16sp</item>
    </style>


以上是关于使用style修改ActionBar的标题和Menu字体颜色及大小的主要内容,如果未能解决你的问题,请参考以下文章

android中使用toolbar

改变ActionBar的背景颜色

试图改变ActionBar homeAsUp按钮的颜色

Android怎么动态更改actionbar的背景颜色

更改 actionBar 下拉背景颜色

Toolbar使用