真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

探索android的底部導(dǎo)航視圖

關(guān)于標(biāo)簽是否應(yīng)該放在屏幕頂部或底部的爭論已經(jīng)持續(xù)了近十年。Android總是偏愛在頁面頂部使用選項卡作為過濾機制,而iOS則使用底部標(biāo)簽作為導(dǎo)航的主要來源?,F(xiàn)在,在支持設(shè)計庫中添加了底部導(dǎo)航視圖,Android開發(fā)者可以選擇他們的應(yīng)用程序的主要導(dǎo)航來。

站在用戶的角度思考問題,與客戶深入溝通,找到盤州網(wǎng)站設(shè)計與盤州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名申請、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋盤州地區(qū)。

底部導(dǎo)航條使您的用戶可以輕松地通過一個水龍頭瀏覽頂級視圖,比較了從側(cè)面飛出的導(dǎo)航抽屜,當(dāng)一個應(yīng)用程序有很多不同的部分時,它是一個標(biāo)準(zhǔn)。今天,我將在您的應(yīng)用程序中最好使用底部導(dǎo)航,如何實現(xiàn)它,以及如何根據(jù)您的喜好定制它。

探索android的底部導(dǎo)航視圖

底層導(dǎo)航的核心體驗是專為手機設(shè)備使用的,它允許用戶輕松地在頁面之間進行交換。如果你使用底部導(dǎo)航應(yīng)該注意的一些問題是:

  • 你的應(yīng)用程序有3到5個頂層頁面嗎?

  • 你的頂層頁面需要直接訪問嗎?

如果你的應(yīng)用程序有超過五頁,最好和導(dǎo)航抽屜在一起;如果少于三頁,堅持標(biāo)準(zhǔn)的頂部標(biāo)簽。

入門

開始新的底部導(dǎo)航視圖, 我們要確保我們的Android應(yīng)用程序的更新了 AppCompat Activity 并且更新到 最新的支持庫。 有了這些,我們現(xiàn)在可以通過NuGet包(當(dāng)前版本是25.3.3)來安裝Xamarin.Android.Support.Design到我們的應(yīng)用工程中。

探索android的底部導(dǎo)航視圖

添加選項卡/菜單項

我們必須定義的項目,將在我們添加到bottomnavigationview控制后顯示。這是控制同樣的navigationdrawer,使用XML定義的菜單。我們可以在資源目錄中創(chuàng)建一個新的菜單文件夾,并添加一個新的XML文件。我們在Resources/menu/下創(chuàng)建一個bottom_navigation_main.xml文件,并且從Android Asset Studio下載一個選項卡的圖標(biāo),大小都是24dpX24dp.

點擊(此處)折疊或打開

  1.     xmlns:app="http://schemas.android.com/apk/res-auto">

  2.   

  3.       android:id="@+id/menu_home"

  4.       android:enabled="true"

  5.       android:icon="@drawable/ic_action_home"

  6.       android:title="@string/tab1_title"

  7.       app:showAsAction="ifRoom" />

  8.  

  9.   

  10.       android:id="@+id/menu_audio"

  11.       android:enabled="true"

  12.       android:icon="@drawable/ic_action_audiotrack"

  13.       android:title="@string/tab2_title"

  14.       app:showAsAction="ifRoom" />

  15.  

  16.   

  17.       android:id="@+id/menu_video"

  18.       android:enabled="true"

  19.       android:icon="@drawable/ic_action_videocam"

  20.       android:title="@string/tab3_title"

  21.       app:showAsAction="ifRoom" />

添加底部導(dǎo)航視圖

底部導(dǎo)航工作時,選擇一個項目時替換碎片。這意味著我們的Android的XML也應(yīng)該有一個FrameLayout交換和碎片,將顯示。我們的XML將以其基本形式看起來像這樣:

點擊(此處)折疊或打開

  1.     xmlns:android="http://schemas.android.com/apk/res/android"

  2.     xmlns:app="http://schemas.android.com/apk/res-auto"

  3.     android:id="@+id/activity_main"

  4.     android:layout_width="match_parent"

  5.     android:layout_height="match_parent">

  6.     

  7.         android:id="@+id/content_frame"

  8.         android:layout_width="match_parent"

  9.         android:layout_height="match_parent"

  10.         android:layout_above="@+id/bottom_navigation"/>

  11.     

  12.       android:id="@+id/bottom_navigation"

  13.       android:layout_width="match_parent"

  14.       android:layout_height="56dp"

  15.       android:layout_gravity="start"

  16.       android:layout_alignParentBottom="true"

  17.       android:background="@android:color/white"

  18.       app:elevation="16dp"

  19.       app:menu="@menu/bottom_navigation_main" />

  20.       

  21.   

我們可以定義一個高程,這樣底部導(dǎo)航就可以用漂亮的陰影從頁面上移除,我們在導(dǎo)航視圖中定義我們的條目,菜單屬性引用我們前面創(chuàng)建的菜單。

探索android的底部導(dǎo)航視圖

我們可以看到,默認(rèn)會自動將我們的主色和灰色的取消項目。

處理點擊事件

現(xiàn)在是我們實際處理點擊事件并設(shè)置內(nèi)容的時候了。在這個例子中,我有三個不同的片段,它們只是加載一個顯示當(dāng)前索引的Android XML文件。我們可以創(chuàng)建一個簡單的方法來替換當(dāng)前的片段,基于我們主活動中的菜單XML中設(shè)置的ID:

點擊(此處)折疊或打開

  1. void LoadFragment(int id)

  2. {

  3.     Android.Support.V4.App.Fragment fragment = null;

  4.     switch (id)

  5.     {

  6.         case Resource.Id.menu_home:

  7.             fragment = Fragment1.NewInstance();

  8.             break;

  9.         case Resource.Id.menu_audio:

  10.             fragment = Fragment2.NewInstance();

  11.             break;

  12.         case Resource.Id.menu_video:

  13.             fragment = Fragment3.NewInstance();

  14.             break;

  15.     }

  16.  

  17.     if (fragment == null)

  18.         return;

  19.  

  20.     SupportFragmentManager.BeginTransaction()

  21.         .Replace(Resource.Id.content_frame, fragment)

  22.         .Commit();

  23. }


現(xiàn)在我們可以加載XML,找到BottomNavigationView,并登記為NavigationItemSelected事件:

點擊(此處)折疊或打開

  1. BottomNavigationView bottomNavigation;

  2. protected override void OnCreate(Bundle bundle)

  3. {

  4.     base.OnCreate(bundle);

  5.     SetContentView(Resource.Layout.main);

  6.     var toolbar = FindViewById(Resource.Id.toolbar);

  7.     if (toolbar != null)

  8.     {

  9.         SetSupportActionBar(toolbar);

  10.         SupportActionBar.SetDisplayHomeAsUpEnabled(false);

  11.         SupportActionBar.SetHomeButtonEnabled(false);

  12.     }

  13.  

  14.     bottomNavigation = FindViewById(Resource.Id.bottom_navigation);

  15.  

  16.     bottomNavigation.NavigationItemSelected += BottomNavigation_NavigationItemSelected;

  17.  

  18.     // Load the first fragment on creation

  19.     LoadFragment(Resource.Id.menu_home);

  20. }

  21.  

  22. private void BottomNavigation_NavigationItemSelected(object sender, BottomNavigationView.NavigationItemSelectedEventArgs e)

  23. {

  24.     LoadFragment(e.Item.ItemId);

  25. }

探索android的底部導(dǎo)航視圖

添加顏色

谷歌的建議是簡單地使用默認(rèn)的白色或黑色背景顏色和主要色調(diào)的圖標(biāo),如果你的應(yīng)用程序使用默認(rèn)主題,你的工具欄已經(jīng)著色。如果您希望設(shè)置底部導(dǎo)航的顏色,然后建議將當(dāng)前動作的圖標(biāo)和文本變?yōu)楹谏虬咨? There are two additional properties, 有兩個附加屬性,app:itemIconTint 和 app:itemTextColor,可以設(shè)置帽子來處理這個問題。 將它們直接設(shè)置為特定的顏色是您可能認(rèn)為您想要做的事情,但最直接的問題會出現(xiàn),它還將取消選擇狀態(tài)相同的顏色。例如,如果我設(shè)置了這三個屬性:

點擊(此處)折疊或打開

  1. android:background="@color/primary"

  2. app:itemIconTint="@android:color/white"

  3. app:itemTextColor="@android:color/white"

探索android的底部導(dǎo)航視圖

為了解決這個問題,我們只需要創(chuàng)建一個drawable文件夾選擇器在我們的定義,將基于一個新的XML文件的狀態(tài)顏色;我們叫做 nav_item_colors.xml:

點擊(此處)折疊或打開

  1.   

  2.   

現(xiàn)在,回到我們的BottomNavigationView,我們可以用新的顏色選擇器:

點擊(此處)折疊或打開

  1. android:background="@color/primary"

  2. app:itemIconTint="@drawable/nav_item_colors"

  3. app:itemTextColor="@drawable/nav_item_colors"

探索android的底部導(dǎo)航視圖

絕對可愛!

了解更多

了解更多關(guān)于android底部導(dǎo)航的知識,一定要通過閱讀它的 材料設(shè)計指南 來了解所有的“清規(guī)戒律”。你也可以從我的GitHub repo你抓取全部樣本以及其它導(dǎo)航的樣品。


本文標(biāo)題:探索android的底部導(dǎo)航視圖
網(wǎng)站路徑:http://weahome.cn/article/gjdoeh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部