Nvigitiontion Drawer Activity的使用
来源:互联网 发布:java cors 跨域 编辑:程序博客网 时间:2024/06/18 18:31
在android studio中创建Nvigitiontion Drawer Activity后生成了三部分xml文件,分别为drawable,layout和menu。
一.主界面是layout/activiyt_main.xml,他定义了DrawerLayout作为布局管理器,DrawerLayout主要由两个部分组成: 1、用户内容 2、侧滑菜单
<?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/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"> <include layout="@layout/app_bar_main" android:layout_width="match_parent" android:layout_height="match_parent" /> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:fitsSystemWindows="true" app:headerLayout="@layout/nav_header_main" app:menu="@menu/activity_main_drawer" /></android.support.v4.widget.DrawerLayout>
1.用户内容是<include/>部分
打开顺序是layout/activiyt_main.xml——app_bar_main.xml——content_main.xml
2.侧滑菜单
android:layout_gravity=”start”这个属性指定了菜单的左侧滑出效果
app:headerLayout="@layout/nav_header_main" 这个定义头部布局样式
<?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="@dimen/nav_header_height" android:background="@drawable/side_nav_bar" android:gravity="bottom" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:theme="@style/ThemeOverlay.AppCompat.Dark"> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" android:src="@android:drawable/sym_def_app_icon" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" android:text="Android Studio" android:textAppearance="@style/TextAppearance.AppCompat.Body1" /> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="android.studio@android.com" /></LinearLayout>
app:menu="@menu/activity_main_drawer" 这个定义菜单的具体项目
<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android"> <group android:checkableBehavior="single"> <item android:id="@+id/nav_camera" android:icon="@drawable/ic_menu_camera" android:title="Import" /> <item android:id="@+id/nav_gallery" android:icon="@drawable/ic_menu_gallery" android:title="Gallery" /> <item android:id="@+id/nav_slideshow" android:icon="@drawable/ic_menu_slideshow" android:title="Slideshow" /> <item android:id="@+id/nav_manage" android:icon="@drawable/ic_menu_manage" android:title="Tools" /> </group> <item android:title="Communicate"> <menu> <item android:id="@+id/nav_share" android:icon="@drawable/ic_menu_share" android:title="Share" /> <item android:id="@+id/nav_send" android:icon="@drawable/ic_menu_send" android:title="Send" /> </menu> </item></menu>菜单这部分在Activity的java代码中,由Activity实现了NavigationView.OnNavigationItemSelectedListener接口并重写onNavigationItemSelected(MenuItem item)方法来响应菜单按钮的点击事件
public boolean onNavigationItemSelected(MenuItem item) { // Handle navigation view item clicks here. int id = item.getItemId(); if (id == R.id.nav_camera) { // Handle the camera action } else if (id == R.id.nav_gallery) { } else if (id == R.id.nav_slideshow) { } else if (id == R.id.nav_manage) { } else if (id == R.id.nav_share) { } else if (id == R.id.nav_send) { } DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); drawer.closeDrawer(GravityCompat.START); return true;}
阅读全文
0 0
- Nvigitiontion Drawer Activity的使用
- Navigation Drawer的使用
- 浅析Drawer Layout的使用
- Navigation Drawer Activity布局
- Drawer Layout 与 Fragment的组合使用
- Android Drawer(抽屉,即侧拉栏)的简单使用:
- Material Design (三) Navigation Drawer的使用
- react-native-navigation-drawer的使用
- Drawer与Toolbar的简单使用
- Navigation Drawer Activity设置头像
- Drawer的使用(一):xml文件中使用
- react-native中抽屉的使用(react-native-drawer)
- Android Drawer的实现
- 学习Google新建项目 Navigation Drawer Activity
- 怎样使用Navigation Drawer控件?
- Navigation Drawer Activity在小米MIUI中的Toolbar按扭菜单的奇怪表现及修正方法
- android中NavigationDrawer的使用以及添加drawer切换时的动画效果
- Android Drawer(抽屜)的使用(二)常用的方法:
- lightoj 1027
- Java 运算符
- 51Nod
- [剑指offer]调整数组顺序使奇数位于偶数前面
- MySQL:有关联的两张表重新生成主键如何关联
- Nvigitiontion Drawer Activity的使用
- 使用Mousetrap处理键盘快捷键(keypress.js和jQuery.hotkeys.js的使用)
- 写日志的一点想法
- java对论坛排序操作
- 微信服务器配置(nginx+python+supervisord, etc:java)
- PHP实现多服务器SESSION共享
- 【动画】上下滑动
- HTML中的行级标签和块级标签
- Spring SSH