Android開發之NavigationView的使用


NavigationView主要是和DrawerLayout框架結合使用,來完成抽屜導航實現側邊欄

引用一段官方文檔的示例代碼

<android.support.v4.widget.DrawerLayout xmlns: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:fitsSystemWindows="true">
     <!-- Your contents -->
     <android.support.design.widget.NavigationView
         android:id="@+id/navigation"
         android:layout_width="wrap_content"
         android:layout_height="match_parent"
         android:layout_gravity="start"
         app:menu="@menu/my_navigation_items" />
 </android.support.v4.widget.DrawerLayout>

在使用NavigationView之前需要將相應的design庫添加到項目的依賴中,

然后在xml中外層用DrawerLayout包裹,內層一部分是正文內容區(content),另一部分則是側邊欄NavigationView,這里面包含兩個布局,一個是headerLayout,一個是menu,

頭布局沒什么好說的,跟普通的布局定義方式類似,menu布局的示例代碼如下

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">
<group android:checkableBehavior="single">
<item android:id="@+id/navigation_item_first" android:icon="@drawable/first" android:title="第一項" />
<item android:id="@+id/navigation_item_second" android:icon="@drawable/second" android:title="第二項" />
<item android:id="@+id/navigation_item_third" android:icon="@drawable/third" android:title="第三項" />
</group>
</menu>

其中各個條目還有checked屬性,設置為true的條目將會高亮顯示

group中的checkableBehavior屬性表示這組這組菜單是否checkable,有三個值可選,分別為none,all(單選/單選按鈕radio button),single(非單選/復選類型checkboxes)

最后還可以在代碼中通過setNavigationItemSelectedListener方法來設置菜單項被點擊的回調,

里面重寫的onNavigationItemSelectedListener方法提供了被選中的MenuItem,用法和Activity的onOptionsItemSelected類似

這樣就可以實現一個簡單的抽屜導航側滑菜單欄,需要更多的屬性與用法可以自行查看Android官方文檔並深入鑽研

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM