关于Toolbar你需要知道的各种sao姿势。(主题篇)


在写如何控制Toolbar的主题之前,先介绍一个Google Material Design的一个颜色工具 COLOR TOOL
关于Toolbar你需要知道的各种sao姿势。(主题篇)_第1张图片


关于Toolbar你需要知道的各种sao姿势。(主题篇)_第2张图片

它是一个主题预览工具,当你选中了某一颜色之后,可以生成对应颜色的app界面。

关于Toolbar你需要知道的各种sao姿势。(主题篇)_第3张图片

你可以直接在这里设置你想要的主题。

设置Toolbar背景颜色

关于Toolbar你需要知道的各种sao姿势。(主题篇)_第4张图片

一般我们的项目中大多数用的都是统一的头,所以我们可以在res/syles.xml中的主题通过添加colorPrimary属性来配置Toolbar的背景颜色:

 

设置Toolbar的Title

�Toolbar类提供了很多对标题以及布局参数设置的方法:

关于Toolbar你需要知道的各种sao姿势。(主题篇)_第5张图片

设置Toolbar子标题


无论是标题还是子标题,不仅可以在上下文中动态设置,而且可以在xml里面静态配置。

设置Toolbar的高度

toolbar的高度在Material Design中的标准中是56dp。

关于Toolbar你需要知道的各种sao姿势。(主题篇)_第6张图片

在android资源属性中提供了 ?attr/actionBarSize来设置,这里的actionBarSize是一个通用属性,在不同版本的android系统toolbar的高度可能有所不同。

结合上面的设置,我们完全可以抽取出一个Style文件来存放这些属性:


但是对于标题和子标题的颜色需要通过Toolbar的theme属性来设置:


二级标题style:


设置Toolbar溢出菜单样式

关于Toolbar你需要知道的各种sao姿势。(主题篇)_第7张图片

一个溢出菜单由文字、背景组成,我们同样可以在xml中通过设置Toolbar的popupTheme属性来控制:


总结

Toolbar类继承自android.view.ViewGroup,所以在除了以上的一些操作,想做一些个性化的定制可以完全从自定义视图的角度来对Toolbar进行操作。另外Material Design对Toolbar的规范有一点是elevation,由于Material Design是一种基于物理世界中的设计理论,物体可以相互堆叠、重合,但不能通过彼此,物体会有阴影。
一般对于appbar的elevation是4dp,

android:elevation="@dimen/appbar_elevation"

好了关于toolbar的主题部分就介绍到这里,本人水平有限,可能有些表达不太准确,所以大家如果有什么问题可以指出,非常感谢!!!

你可能感兴趣的:(关于Toolbar你需要知道的各种sao姿势。(主题篇))