美文网首页
Toolbar的详细使用

Toolbar的详细使用

作者: 勤能不能补拙 | 来源:发表于2017-11-20 16:25 被阅读0次

    Toolbar是作为5.0之后替代ActionBar的一个控件,平时也是会经常的使用toolbar这个东西,但是也只是基本的使用,太深入详细的功能也没有去尝试,最近抽时间做了一个详细的学习整理,做一个记录.

    简单使用

    如果像使用toolbar,首先要把actionbar干掉,像这样

    android:theme="@style/Theme.AppCompat.Light.NoActionBar"

    这个可以加在applaction标签,这样全局没有toolbar了,或者指定activity,这样这个活动就没有toolbar了

    然后,这就是一个最简单的toolbar

    然后是运行效果图

    图中的标题是通过xml设置,或者java设置的

    app:title="这是一个toolbar"

    toolbar.setTitle("一个丑陋的标题");

    其他属性

    上面就是这个东西的简单使用,但是效果没法看的..再来使用一下他的其他属性

    backgroud="#f00" 这个不用说,设置背景颜色

    app:titleTextColor="#fff"  标题颜色

    app:subtitleTextColor="#55000000"  小标题颜色

    subtitle="小标题"   小标题

    logo      logo...

    app:navigationIcon="@mipmap/back"  导航图标

    然后效果图如下

    menu的设置

    我们先搞一个菜单出来,注意,菜单有一个属性:

    app:showAsAction  然后他有这么几个可选值

    1、always:使菜单项一直显示在ToolBar上,优先级最高,加入你有10个menu,他会全都放到上面直到放不下为止,包括标题等都会被挤掉(菜单键不会) ,而且如果你为这个menu设置了icon,他会有限限时icon,没有icon的话会限时字

    2、ifRoom:如果有足够的空间,这个值会使菜单项显示在ToolBar上。 

    3、never:使菜单项永远都不出现在ToolBar上,在…的子项中显示。 

    4、withText:使菜单项和它的图标,菜单文本一起显示。

    然后在activity中重写

    然后看效果

    全部设置为never 设置为ifRoom的时候

    然后必须要设置点击事件

    这样toolbar的菜单就基本可以使用了,但是还有一些细节设置

    其他问题

    1,三个丑陋的黑点怎们改变

    在主题中加入最下面的一行 效果

    2,我想像微信一样修改子菜单的样式怎们搞?

    先搞个主题出来

    这个主题的是直接继承ThemeOverlay.AppCompat.Dark,是支持包的一个主题

    然后在toolbar的布局中加入这么一个属性

    然后就变了效果

    效果图

    3,我想修改气泡弹出的位置怎们搞?

    把给them增加以上内容 效果

    4然后我们突然发现子菜单没有图标,神们鬼?

    在activity中加这么一段代码,对,直接拷贝过去 完美解决

    5,这种效果怎们做?

    toolba是继承自viewGroup的一个子类,请在他里面放一个textview,然后居中即可.复杂的布局同理

    这些差不多就是toolbar的一些使用了,这是一个定制性非常高的控件,早日替换actionbar

    相关文章

      网友评论

          本文标题:Toolbar的详细使用

          本文链接:https://www.haomeiwen.com/subject/bckyvxtx.html