ToolBar的使用

2017-04-11  本文已影响0人  EternallyLiu

前言

Toolbar的使用大大简化了Actionbar的使用成本,并且可以像一个控件一样可以灵活使用,但是在5.0以下的安卓版本需要使用依赖包,Toolbar目前大部分都是用来替代actionbar的,所以使用跟actionbar很相似。

使用

*主题设置

colorPrimary:Actionbar的背景色(如果使用的是actionbar,则直接为这个颜色),但是在使用Toolbar的时候可以为toolbar设置backgrond属性,android:background="?attr/colorPrimary"来引用该颜色。

colorPrimaryDark:沉浸式状态栏的底色。

colorAccent:对应EditText编辑时、RadioButton选中、CheckBox等选中时的颜色。

剩下的三个属性是为了在引用Toolbar的时候将Actionbar隐藏掉,故设置,最后一个在API22版本编译的时候需要前面不加android。所有的属性值都设置好了之后使Toolbar所在的Activity使用这个Theme.

*代码的调用

这里的每个设置的含义就不再叙述,主要就是注意一下调用顺序的问题:

设置Title要在setSupportActionBar(toolbar)之前。

设置Navigation的图标和点击事件要在其之后。

以上代码提到的地方都可以直接在布局文件里进行设置。

setSupportActionBar(toolbar)的目的是为了将Toolbar当做Actionbar来用,所以就有了:需要显示菜单的时候必须重写onCreateOptionsMenu(Menumenu)方法,设置菜单的点击事件的话,可以重写onOptionsItemSelected(MenuItemitem)方法,也可以直接toolbar.setOnMenuItemClickListener(onMenuItemClick)设置菜单的监听器,但是需要在setSupportActionBar(toolbar)之后(前提是已经设置了菜单xml文件)

附:toolbar.addview()方法可以在title之后加入控件view,不过可能会影响title的显示。

*菜单Menu

title:菜单的标识文字,只有在没有icon或者长按菜单icon的时候才会显示出来。

showAsAction:显示模式,一般是ifRoom,在空间允许的条件下展示

icon:菜单图标

orderInCategory:显示优先级,数字越大,在空间有限的情况下越有可能显示。

*完成使用

toolbar的样式颜色配置在主题中完成,title,logo,navigation等属性可以在代码中设置也可以在xml文件中定义,返回键的点击事件,以及菜单的配置和点击事件我们都已经在上面讲过,故完成使用。

注意

在有些人写的activity中的toolbar很有可能是由一个layout直接搞出来的一个假的,这个也可以做到,包括自定义返回按钮和菜单按钮,根据自己的需求决定。代码如下:

Toolbar与DrawerLayout结合使用

Drawerlayout 与 Toolbar结合可以形成三条线变成箭头的炫酷侧拉栏效果,首先应该按照如下所示的代码搭建好内容区域和菜单区域,并且使DrawerLayout作为根目录,同时对侧栏菜单区域的布局需要加上android:layout_gravity="left"属性来表示该侧拉菜单是从左面拉出的。

配置完成后,在activity的布局文件中同时引用toolbar和DrawerLayout。

之后就是在代码中引用吗,详细的解释都已经写在代码注释中,到这就已经完成了DrawerLayout与Toolbar的共同使用。

上一篇下一篇

猜你喜欢

热点阅读