引言
说起这个侧滑菜单,自从QQ改版以后,这个功能是我们每天必见的了,对吧!手势贴最左边,向右滑动就会呼出侧滑菜单的各种功能入口,比如头像资料、钱包、文件、设置等等,还有知乎首页从右往左可以呼出最近浏览记录,很多APP都有这种功能~~
概述
我们都知道Google从发布Android M后,增加一个全新的支持库Android Design Support Library,其中包含了多个重要的 Material Design 组件,可用于将 Material Design 向下兼容到 Android 2.1 (API 7) 。
(1)
在Material Design中,NavigationView 可以方便地创建导航抽屉,被设计于应用导航,它提供了一种通用的导航方式,体现了 Google 设计的一致性。
NavigationView 的典型用途就是配合之前v4包的 DrawerLayout,作为其中的Drawer部分,即导航菜单的本体部分。它只需要接收两个重要的参数:一个用于显示头部的 header 布局(可选),另一个是用于建立导向选项的 menu 菜单。添加完之后,设置监听事件就可以了,更简单高效的实现了导航菜单。
当然,它还提供了不错的默认样式、选中项高亮、分组单选、分组子标题。
(2)
Toolbar 也是在 Android M 开始推出的一个 Material Design 风格的导航控件 ,Google 非常推荐大家使用 Toolbar 来作为客户端的导航栏,以此来取代之前的 Actionbar 。
Toolbar与 Actionbar 相比明显要灵活,它不一定要固定在顶部,可以放到界面的任意位置、还可以设置导航栏图标、设置 APP 的 Logo、支持设置标题和子标题、支持添加一个或多个的自定义控件、支持 Action Menu等等吧。
展示
那么今天就简单介绍一下使用 NavigationView 和 DrawerLayout ,当然还有 Toolbar 绘制最简单的侧滑菜单,效果展示如下:
开撸
1、既然使用 Design Support Library,首先需要在工程中添加依赖:
compile 'com.android.support:design:24.2.1'
2、 添加后,我们开始写主界面的 Activity,activity_main.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/layout_drawer"
android:layout_width="match_pare