随着android 版本不断推进,android的标题栏也渐渐由ActionBar过渡到Toolbar, Toolbar涵盖了ActionBar的所有功能并且更加灵活,于是笔者就总结了Toolbar的使用。
注意: << 我们继承的是AppCompatActivity与Activity相比兼容了android较低版本的Material Design>>
文章大纲:
1: 如何布局Toolbar。
2: Toolbar布局后相关问题。
3: 为Toolbar增加内容。
环节一 <如何布局Toolbar>:
继承AppCopatActivity后AS会默认帮我们创建一个ActionBar,所以替换为Toolbar之前先将其移除。在 AndroidManifest文件中修改application或Activity 的theme。 例如:
android:theme="@style/Theme.AppCompat.Light.NoActionBar">
使用android库里的去除title样式。
<item name="windowNoTitle">true</item> 自定义样式加上这个属性(要继承一个合理的父样式)。 上述任选其一即可。运行app发现标题栏消失了。
注意: 在Activity中调用getSupportActionBar().hide(); 并不是移除ActionBar看源码:
public void hide() { mDecorToolbar.setVisibility(View.GONE); } //只是将其隐藏并解除占用空间,如果这时候我们再添加Toolbar会报错。
上述过程完成后我们就可以添加Toolbar了,添加Toolbar所具备的条件:
一: Toolbar必须存在顶层DecorView的tree结构中(在Decorview中可找到即可);
二:调用setSupportActionBar(toolbar); toolbar即是上述存在于DecorView的Toolbar。 这行代码通俗讲就是让toolbar显示出来。
我们试一下一个不存在布局的Toolbar会不会被添加。