本文是对第一行代码中第十二章material design 的简单总结
使用toolbar代替actionbar
1 manifest中指定theme为noactionbar的theme
![](https://img.haomeiwen.com/i13790592/02db9ba224f5732c.png)
2 layout中添加ToolBar
![](https://img.haomeiwen.com/i13790592/5258b70c4838e74d.png)
宽度match_parent高度引用原actionBar的高度
加入背景色 设置theme能让toolbar单独使用深色主题(如果不设置显示的字也会是深色)
3 现在已经设置好了toolbar,隐藏了actionbar,下面在java中将toolbar设置为actionbar的替代
![](https://img.haomeiwen.com/i13790592/f45c69fbd8a5d035.png)
Drawerlayout
![](https://img.haomeiwen.com/i13790592/6a0c28a138469b6e.png)
layout中添加一个DrawerLayout
里面放两个直接子控件
指定layout gravity = “left”的子控件在左,另一个在右。
显示HomeAsUp——并设置点击打开左侧子布局
![](https://img.haomeiwen.com/i13790592/0286389c4e405287.png)
![](https://img.haomeiwen.com/i13790592/f809c75cdacacff0.png)
第一行显示HomeAsUp
第二行设置HomeAsUp的图片
HomeAsUp点击打开侧滑效果
![](https://img.haomeiwen.com/i13790592/80011006db21e1e9.png)
重写onOptionsItemSelected()
HomeAsUp的id永远是android.R.id.home;
NavigationView
navigationView是design suppport库里的控件,添加design support依赖
![](https://img.haomeiwen.com/i13790592/633c57c6856cd977.png)
首先需要准备两个东西:menu和head_layout
res 下的menu文件夹下创建nv_menu文件
![](https://img.haomeiwen.com/i13790592/5c6b1c752dc1b6e3.png)
新建layout(就是一个普通的layout)
![](https://img.haomeiwen.com/i13790592/3b198ef70298f24b.png)
将menu和head_layout关联到navigationView里
![](https://img.haomeiwen.com/i13790592/06136c7d06f8031f.png)
效果图
![](https://img.haomeiwen.com/i13790592/651601dff72d4b0b.png)
网友评论