日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android Design新特性-NavigationView实现抽屉式

發布時間:2025/3/21 Android 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android Design新特性-NavigationView实现抽屉式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

效果圖




添加依賴庫
(要是高版本的Android Studio,則已經為我們自動添加了所需的依賴庫)

dependencies {compile fileTree(dir: 'libs', include: ['*.jar'])compile 'com.android.support:appcompat-v7:22.2.1'compile 'com.android.support:design:22.2.1' }



創建菜單項
nav_menu.xml

<?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/home"android:title="Home"android:icon="@drawable/ic_home"/><item android:id="@+id/settings"android:title="Settings"android:icon="@drawable/ic_setting"/><item android:id="@+id/trash"android:title="Trash"android:icon="@drawable/ic_trash"/><item android:id="@+id/logout"android:title="Logout"android:icon="@drawable/ic_exit"/></group> </menu>



創建布局
nav_header.xml

<?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="190dp"android:paddingTop="20dp"android:paddingBottom="20dp"android:background="@color/colorPrimary"android:orientation="vertical"><ImageView android:id="@+id/image_view"android:layout_width="wrap_content"android:layout_height="0dp"android:layout_weight="1"android:src="@drawable/ic_person"android:layout_gravity="center"/><TextView android:id="@+id/tv_email"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="1234563278@126.com"android:layout_gravity="center"android:textSize="20sp"android:textColor="@color/White"/></LinearLayout>

nav_menu與nav_header分別為NavigationView中的頭部與菜單項。記得NavigationView必須以DrawerLayout為父容器



content_main.xml

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Navigation Drawer"android:layout_centerHorizontal="true"android:layout_centerVertical="true"android:textSize="25sp"/></RelativeLayout>



main.xml

<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"android:id="@+id/drawer_layout"android:layout_width="match_parent"android:layout_height="match_parent"><android.support.design.widget.CoordinatorLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"><android.support.v7.widget.Toolbarandroid:id="@+id/tool_bar"android:layout_width="match_parent"android:layout_height="?attr/actionBarSize"android:background="@color/colorPrimary"></android.support.v7.widget.Toolbar></android.support.design.widget.CoordinatorLayout><android.support.design.widget.NavigationViewandroid:id="@+id/navigation_view"android:layout_width="wrap_content"android:layout_height="match_parent"app:headerLayout="@layout/nav_header"app:menu="@menu/nav_menu"android:layout_gravity="start"></android.support.design.widget.NavigationView></android.support.v4.widget.DrawerLayout>


界面

package com.example.demo.navigationviewtest;import android.os.Bundle; import android.support.design.widget.NavigationView; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.MenuItem; import android.view.View; import android.widget.TextView; import android.widget.Toast;public class MainActivity extends AppCompatActivity {private DrawerLayout mDrawerLayout;private ActionBarDrawerToggle mActionBarDrawerToggle;private Toolbar mToolbar;private NavigationView mNavigationView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);mToolbar = (Toolbar) findViewById(R.id.tool_bar);mNavigationView = (NavigationView) findViewById(R.id.navigation_view);mToolbar.setTitle("NavigationView");setSupportActionBar(mToolbar);mActionBarDrawerToggle = new ActionBarDrawerToggle(this,mDrawerLayout,mToolbar,R.string.open,R.string.close){@Overridepublic void onDrawerOpened(View drawerView) {super.onDrawerOpened(drawerView);}@Overridepublic void onDrawerClosed(View drawerView) {super.onDrawerClosed(drawerView);}};mActionBarDrawerToggle.syncState();mDrawerLayout.setDrawerListener(mActionBarDrawerToggle);mNavigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {@Overridepublic boolean onNavigationItemSelected(MenuItem menuItem) {int id = menuItem.getItemId();switch (id) {case R.id.home:Toast.makeText(getApplicationContext(), "Home", Toast.LENGTH_SHORT).show();mDrawerLayout.closeDrawers();break;case R.id.settings:Toast.makeText(getApplicationContext(), "Settings", Toast.LENGTH_SHORT).show();mDrawerLayout.closeDrawers();break;case R.id.trash:Toast.makeText(getApplicationContext(), "Trash", Toast.LENGTH_SHORT).show();mDrawerLayout.closeDrawers();break;case R.id.logout:Toast.makeText(getApplicationContext(), "Logout", Toast.LENGTH_SHORT).show();mDrawerLayout.closeDrawers();break;}return true;}});TextView tv_email = (TextView)findViewById(R.id.tv_email);tv_email.setText("http://blog.csdn.net/wiseclown");}}




注意
compile 'com.android.support:design:23.2.0',則可以使用addDrawerListener來替代setDrawerListener,以及NavigationView中添加了getHeaderView( )方法來獲取Header view。



源碼地址:https://github.com/xkck/NavigationViewTest



參考文章
[1]http://blog.csdn.net/lmj623565791/article/details/46405409
[3]http://www.jianshu.com/p/76e30f87a4ed
[2]http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0608/3011.html

總結

以上是生活随笔為你收集整理的Android Design新特性-NavigationView实现抽屉式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久久久99精品久久久 | 亚欧综合在线 | 动漫裸体无遮挡 | 99精品视频国产 | 少妇脱了内裤让我添 | 天天综合天天添夜夜添狠狠添 | 99ri国产精品| 伊人干综合 | 天天色天天草 | 国产91热爆ts人妖在线 | japanese21ⅹxx日本 | 欧美日韩一二三区 | 国产一区二区三区在线观看视频 | 色婷婷久久久亚洲一区二区三区 | 国产综合图区 | 无码不卡av东京热毛片 | www.黄色免费 | 99久久这里只有精品 | 日韩av在线播放观看 | 亚洲天堂男人网 | 青青操视频在线 | 熊出没之冬日乐翻天免费高清观看 | 亚州综合网 | 国产山村乱淫老妇女视频 | 少妇免费视频 | 91尤物在线 | 韩国久久精品 | 久久久综合av| 日韩激情在线视频 | 俺也去五月婷婷 | 青青草免费观看视频 | 香蕉午夜视频 | 变态视屏| 日韩一级片一区二区 | 性开放网站 | 国产精品黄网站 | 可以免费观看的av网站 | 琪琪色视频 | 特色黄色片 | 中文字幕在线观看不卡 | 日本色站 | 婷婷五月综合激情 | 欧洲精品码一区二区三区免费看 | 特大黑人娇小亚洲女mp4 | 国产少妇在线 | 中字幕视频在线永久在线观看免费 | 国产成人在线视频 | xxxx在线视频 | 欧美打屁股 | 免费av一区| 一区二区激情 | 麻豆免费在线观看 | www日| 日韩免费久久 | 亚洲av首页在线 | 精品网站999 | 日本免费视频 | 国产成人自拍视频在线 | 成人h片在线观看 | www.夜夜 | 欧美日韩视频在线观看免费 | 黄av在线 | 亚洲无av在线中文字幕 | yy1111111| 日韩无马 | 波多野结衣二区三区 | 精品午夜福利在线观看 | 国产一级片 | 久久99久久98精品免观看软件 | 美国黄色a级片 | 亚洲一级黄色大片 | 日本高清黄色电影 | 老师张开让我了一夜av | 噼里啪啦免费看 | 亚洲欧美在线视频免费 | 51吃瓜网今日 | 国产精品20p | 日本欧美国产 | 亚洲v在线观看 | 国产亚洲一区二区三区 | 亚洲天堂网在线观看视频 | 毛片全黄 | 中文字字幕一区二区三区四区五区 | 欧美日本韩国一区二区三区 | 亚洲国产精品成人无码区 | 国产伦理自拍 | 久久婷婷色 | 男女做激情爱呻吟口述全过程 | 亚洲字幕 | 欧美一区二区三区大屁股撅起来 | 国产乱码精品一区二区三区中文 | 久久久国产亚洲 | 欧美少妇b| 中文字幕7 | 亚洲乱码精品久久久久 | 午夜大片网 | 成人激情四射网 | 污污的视频在线免费观看 | 成人精品一区二区三区视频 |