本文主要是介绍改变ActionBar右侧三个小点的颜色,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
先介绍一下背景,使用的是Support v7 21+的兼容库来实现 material style
Theme
<style name="BaseTheme" parent="Theme.AppCompat.Light.NoActionBar"><!-- Customize your theme here. --><item name="windowActionBar">false</item><item name="android:windowNoTitle">true</item><!-- Actionbar color --><item name="colorPrimary">@color/android_blue</item><!--Status bar color--><item name="colorPrimaryDark">@color/android_blue</item><item name="android:windowContentOverlay">@null</item><item name="android:scrollbarThumbVertical">@drawable/scrollbar_handle_holo_light</item><item name="android:windowAnimationStyle">@style/ActivityAnimationStyle</item><item name="android:textColor">@color/black</item><item name="colorAccent">@color/android_blue</item><item name="android:textColorPrimary">@color/black</item></style>
三个黑色的小点和背景还有前面的文字格格不入,那么怎么解决这个问题尼?搜索了一些解决方案比如
<style name="MyCustomTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionOverflowButtonStyle">@style/MyCustomTheme.OverFlow</item><item name="actionOverflowButtonStyle">@style/MyCustomTheme.OverFlow</item>
</style><style name="MyCustomTheme.OverFlow"><item name="android:src">@drawable/my_overflow_image</item>
</style>
但是没有效果,突然想起来一个开源项目Sky31Radio,有遇到同样的场景,果然找到了解决方案,问题的关键在于使用了ToolBar来代替Actionbar,那么menu和overflow的样式应该在Toolbar上定义。
下面是解决方案:
actionBar右上角如果是文本的menu,如果想要自定义样式需要在Toolbar中自定义style
app:theme="@style/AppTheme.ActionBar"
然后在style.xml中
<style name="AppTheme.ActionBar" parent="<span style="color:#ff0000;">@style/ThemeOverlay.AppCompat.Dark.ActionBar</span>"><item name="actionMenuTextColor">#fff</item><item name="actionMenuTextAppearance">@style/AppTheme.actionMenuTextSize</item></style><style name="AppTheme.actionMenuTextSize" parent="Base.TextAppearance.AppCompat.Widget.ActionBar.Menu"><item name="android:textSize">18sp</item><item name="android:textStyle">normal</item></style>
相关资料:
How To Create A Material Style Action Bar On KitKat And Older Android Versions
Android应用开发中的风格和主题(style,themes)
这篇关于改变ActionBar右侧三个小点的颜色的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!