安卓侧滑之DrawerLayout+NavigationView
来源:互联网 发布:三国志11武将数据查询 编辑:程序博客网 时间:2024/06/06 17:26
NavigationView是谷歌在侧滑的MaterialDesign的一种规范,所以提出了一个新的控件,用来规范侧滑的基本样式。
首先准备两个xml布局;
第一个布局是侧滑出来的菜单布局
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/action_gallery" android:title="相册" android:orderInCategory="10" android:icon="@android:drawable/ic_menu_gallery" /> <item android:id="@+id/action_details" android:title="详情" android:orderInCategory="2" android:icon="@android:drawable/ic_menu_info_details" /> <item android:id="@+id/action_about" android:title="关于" android:orderInCategory="100" android:icon="@android:drawable/ic_menu_help"> <menu > <item android:id="@+id/aaa" android:title="111" android:icon="@android:drawable/ic_media_play"/> <item android:id="@+id/bbb" android:title="222" android:icon="@android:drawable/ic_media_pause"/> </menu> </item> <item android:id="@+id/action_music" android:title="音樂" android:orderInCategory="100" android:icon="@android:drawable/ic_menu_more" > <menu > <item android:id="@+id/action_play" android:title="播放" android:icon="@android:drawable/ic_media_play"/> <item android:id="@+id/action_pause" android:title="暫停" android:icon="@android:drawable/ic_media_pause"/> </menu> </item></menu>第二个是侧滑菜单的头部布局
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" android:orientation="vertical" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/icon_people" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="666" android:textSize="10dp" /></LinearLayout>第二个布局不是必须,根据产品需求修改。
然后在Activity对应的布局文件中引用NavigationView
<?xml version="1.0" encoding="utf-8"?><RelativeLayout 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/activity_drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#0f0" tools:context="com.example.hp.md.NavigationView_Activity"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary"></android.support.v7.widget.Toolbar> <android.support.v4.widget.DrawerLayout xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawerLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@id/toolbar" tools:context="com.example.hp.md.NavigationView_Activity"> <!--内容界面--> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面这是内容界面" /> </LinearLayout> <!-- 侧滑菜单部分 --> <android.support.design.widget.NavigationView android:id="@+id/my_navigation" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" app:headerLayout="@layout/navigation_headerlayout" app:menu="@menu/navigation_menu"></android.support.design.widget.NavigationView> </android.support.v4.widget.DrawerLayout></RelativeLayout>
app:menu="@menu/navigation_menu"引用的是上面准备的第一个布局
app:headerLayout="@layout/navigation_headerlayout"引用的是上面准备的第二个布局
0 0
- 安卓侧滑之DrawerLayout+NavigationView
- NavigationView与Drawerlayout之双宿双飞
- NavigationView+DrawerLayout
- DrawerLayout && NavigationView
- Material Design学习之DrawerLayout与NavigationView
- Material Design之NavigationView和DrawerLayout实现侧滑菜单栏
- MaterialDesign之NavigationView和DrawerLayout实现侧滑菜单栏(抽屉)
- MaterialDesign之NavigationView和DrawerLayout实现侧滑菜单栏
- android material design之DrawerLayout,NavigationView(三)
- Android Support Design库之DrawerLayout和NavigationView
- Material Design设计之NavigationView+DrawerLayout主流侧滑实现
- MaterialDesign之NavigationView和DrawerLayout实现侧滑菜单栏(抽屉)
- Material Design之侧滑菜单DrawerLayout+NavigationView的使用
- Material Design之DrawerLayout与NavigationView实现抽屉效果
- Drawerlayout,ActionBarDrawetoggle,NavigationView使用
- drawerlayout配合NavigationView使用
- NavigationView和DrawerLayout
- ToolBar+DrawerLayout+NavigationView
- html button点击就会刷新页面的解决方案
- 【STL】 map用法详解
- 导致loadJson读不了数据的一个bug
- cocos地图拖动 ,及其缩放
- Access retriction is not a API
- 安卓侧滑之DrawerLayout+NavigationView
- java web错误
- 回调函数3:C语言中的回调函数使用
- Android项目开发技巧–moveTaskToBack(boolean )方法的使用
- 设计模式
- 正则表达式
- CodeForces 442 div2 记录
- redis按照正则批量删除key
- Python装饰器由浅入深