一,介绍
App Bar —>是一个名词,指的是一整个标题栏部分
ActionBar与ToolBar的区别:
—>ActionBar是一个类,实际使用中它在不同系统版本中显示的效果不同,兼容性差
—>ToolBar改善了不同版本中显示的问题,实际开发中建议使用ToolBar
#ToolBar在实际使用中也是通过ActionBar对象的实例进行控制管理的
二,
ToolBar的使用
1)新建工程后,查看是否导入android.support.v7类库
2)MainActivity继承至AppCompatActivity
3)AndroidManifest文件中取消应用的标题栏
4)在主布局文件activity_main.xml中创建ToolBar,?attr/ 为调用系统的资源
5)MainActivity中绑定ToolBar
6)显示或者隐藏ToolBar的代码:
----------------------------
在ToolBar中添加按钮和监听事件:
1)新建资源文件res/menu/menu.xml ,
建立item子项如“收藏按钮”
“设置”按钮
#showAsAction一定要用app的命名空间,否则会有不显示icon的问题
2)MainActivity中重写onCreateOptionMenu方法,通过getMenuInflater().inflate()解析出menu.xml中的子项
3)MainActivity中监听按钮点击事件,重写onOptionItemselected方法
-------------------------
添加搜索按钮
1)menu.xml中添加子项
#actionViewClass —> 指定这个子项使用SearchView类显示
#collapseActionView —> 这个属性内部有两个回调方法,SearchView收缩和伸展时会触发
#注意命名空间一定要写app,否则SearchView不会伸展和收缩
2)在onCreateOptionMenu方法中获取searchView的对象,即可对searchView进行操作(略)
3)在onCreateOptionMenu方法中注册SearchView伸展和收缩时的监听事件
#两个方法如果返回true,则会有效果,如果返回false,则没有效果。但是方法不论返回值是什么都会执行。
#这两个方法都在showAsAction:collapseActionView 属性内置,如果去掉这个属性则没有回调方法
--------------------
添加分享按钮:
1)menu.xml中添加子项
#actionProviderClass —> 直接调用ShareActionProvider类
#不需要设置图标
--------------------
添加返回按钮:
1)新建另外一个OtherActivity,在OtherActivity中设置ToolBar(操作同上),并显示返回按钮(图标样式内置,不需要设置)
#返回按钮有向上和向后的区别,向上是返回父级Activity(Manifest中指定),向后则是返回栈。
2)在AndroidManifest文件中添加ParentActivity属性以及<meta-data>标签
#设置完成后在OtherActivity中点击返回按钮即可返回MainActivity