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