这个简单的Demo主要为了了解ToolBar,下图为demo预览:
![](https://img.haomeiwen.com/i21234346/8e3b529deda2ddec.png)
左边在Toolbar组件中定义app:tiitle属性显示标头ToolBarDemo
并包含有图标和option Selector的menu
此Demo只有简单的实现效果,当用户选择selector中的分享,设置或者退出,会通过吐司显示一行成功语句,如下图
![](https://img.haomeiwen.com/i21234346/1efae581572f0eda.png)
![](https://img.haomeiwen.com/i21234346/aff293788ab5d6be.png)
一:添加Toolbar组件需要在build.gradle中Implementation design依赖
二: 创建top_toolbar.xml添加merge标签和Toolbar组件:
为了后续拓展,我们通过merge标签和include标签将activity_home主页布局和toolbar布局分割开来,下图为主页xml代码:
![](https://img.haomeiwen.com/i21234346/3024ec3835f3a38e.png)
在top_toolbar.xml中配置一些简单的属性:theme, background, title和titleMarginStart等
![](https://img.haomeiwen.com/i21234346/4934d7046c4f356e.png)
要使用Toolbar,需要将style中的ActionBar设置为NoActionBar
![](https://img.haomeiwen.com/i21234346/cc10b5f8043a5bde.png)
三:在HomeActivity.java实现toolbar
通过findByView(R.id.top_toolbar)获取xml布局,并调用setSupportActionBar(toolbar)
toolbar继承于actionbar,所以通过调用setSupportActionBar来告诉android来实现actionbar的功能
![](https://img.haomeiwen.com/i21234346/8874a94cf3b25965.png)
四:创建toptoolbarmenu.xml来为toolbar添加选项
我们通过showAsAction="always"来创建两个带有icon并且永远显示的选项“查询”和“喜欢”
并且创建三个带有下拉菜单功能的选项:“分享”,“设置”和“退出”
代码如下:
![](https://img.haomeiwen.com/i21234346/fd524642974b424b.png)
五:在HomeActivity.java中实现菜单选项功能:
添加并覆写函数onCreateOptionMenu(Menu, menu)
![](https://img.haomeiwen.com/i21234346/4dd620a9de6bc126.png)
上图中通过设置getMenuInflater()来返回这个Activity的manuinflater,并且通过menu的xml文件来告知返回哪个menu
添加并覆写函数onOptionsItemSelected(MenuItem item)来实现选择功能,并通过匹配itemId来吐司相对应的语句
![](https://img.haomeiwen.com/i21234346/05546c150ba37e34.png)
网友评论