ToolBar 修改菜单字体和颜色

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

ToolBar基本使用


关于ToolBar的使用,网上已经非常多了,

思路决定出路

so, 思路是这样的:

  1. 隐藏ActionBar,这里有两种设定方法

  2. 布局文件中声明, 没什么说的

  3. 代码中设定一下,没什么说的

可以参考这里学习:
Android 5.x Theme 与 ToolBar 实战
Android Toolbar样式定制详解

ToolBar菜单


ToolBar使用菜单,思路长这样:

首先在menu/menu_main.xml去声明布局,然后重写onCreateOptionsMenu(inflate该布局)和onOptionsItemSelected(设定其点击事件)即可,当然也可以通过toolbar.setOnMenuItemClickListener实现点击menu的回调。

这里遇到个坑,我只需要有一个菜单,默认设定后颜色为黑色,和橙色的colorPrimary不搭调,然后想着设定为白色,没想到掉坑里去了,其实我不是一个人:Android中菜单的字体太小了:设置actionbar中menu的text的size,这位大神很给力,尝试了各种方法,最后搞掂,思路清晰,粗暴但是不简单呐。

我直接从他的解决方法入手,开始搞,然而不是很靠谱,只能修改字体大小,颜色还是黑的,丑爆。
因此来到了这里:Android Toolbar样式定制详解

方法就是添加 ToolBar 主题

这个demo运行,完美解决,但是在我自己的项目里,一直出不来效果,一定是哪里出现了问题。。

没错,确实是我的问题,凡事还是多反思自己,我画蛇添足咯,多写了点东西,是什么呢,你们应该猜到了,我们来看:

首先敲定ToolBar布局,加一个theme:

1
2
3
4
5
6
7
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?/attr/actionBarSize"
android:background="?attr/colorPrimary"
app:theme="@style/ToolbarTheme">

</android.support.v7.widget.Toolbar>

然后定义ToolBarTheme样式

注意,此处的坑较多,首先,要有个parent,然后actionMenuTextColor前面不能有android前缀,谁加谁怀孕,当然在values-v21/styles.xml里是需要添加android前缀的。

1
2
3
4
5
<!-- ToolBar菜单样式 -->
<style name="ToolbarTheme" parent="@style/ThemeOverlay.AppCompat.ActionBar">
<item name="actionMenuTextColor">@color/white</item> <!-- 敲定颜色-->
<item name="android:textSize">18sp</item> <!-- 搞掂字体大小-->
</style>

好了,这样就可以了,ToolBar 修改菜单字体和颜色完成。

只要用力去钻,都会有的。

分享是一种美德,更是一种生活方式!!

也许你会说我是一个梦想者,但我不是唯一的一个。

悦分享,越快乐^_^

欢迎交流,转载请注明出处,谢谢!

文章目錄
  1. 1. ToolBar基本使用
  2. 2. ToolBar菜单
,
Fork me on GitHub