BottomNavigationView新控件的介紹以及使用

分類:技術 時間:2016-10-25

現在可能很多人實現類似微信界面結構更多是使用tablayout viewpager(嵌套fragment),目前谷歌出現了BottomNavigationView這個控件,本篇文章將介紹其具體的使用,也歡迎大家互相討論:

話不多說先上效果圖:

Screenshot_2016-10-25-00-29-57-581_com.example.b9.png

1、在 build.gradle 文件中增加依賴:

compile 'com.android.support:design:25.0.0'

2、布局:

lt;android.support.design.widget.BottomNavigationView    
android:id=quot;@ id/bnv_mainactivityquot; 
android:layout_width=quot;match_parentquot;
android:layout_height=quot;wrap_contentquot;  
android:layout_alignParentBottom=quot;truequot;    
app:itemBackground=quot;@color/colorAccentquot;  
app:itemIconTint=quot;@android:color/whitequot;    
app:itemTextColor=quot;@android:color/whitequot;   
app:menu=quot;@menu/bottomquot;gt;
lt;/android.support.design.widget.BottomNavigationViewgt;

3、menu菜單項:

lt;?xml version=quot;1.0quot; encoding=quot;utf-8quot;?gt;
lt;menu xmlns:android=quot;http://schemas.android.com/apk/res/androidquot;gt;
 lt;item    android:icon=quot;@drawable/ic_account_balance_black_24dpquot;  android:title=quot;主頁quot; /gt;   
 lt;item    android:icon=quot;@drawable/ic_account_balance_wallet_black_24dpquot;   android:title=quot;錢包quot; /gt; 
 lt;item   android:icon=quot;@drawable/ic_add_shopping_cart_black_24dpquot; android:title=quot;購物quot; /gt;  
 lt;item   android:icon=quot;@drawable/ic_account_circle_black_24dpquot;  android:title=quot;我的quot; /gt;
lt;/menugt;

4、activity中使用:

@BindView(R.id.bnv_mainactivity)
BottomNavigationView bnvMainactivity;
@BindView(R.id.activity_main)
RelativeLayout activityMain;
@Overrideprotected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);    
setContentView(R.layout.activity_main);   
ButterKnife.bind(this);  

bnvMainactivity.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() { 
@Override     
   public boolean onNavigationItemSelected(@NonNull MenuItem item) {  
      setTitle(item.getTitle());      
      return true;     
   }   
 });
}

5、注意:

底部導航欄高度默認是 56dp。

菜單元素只能是 3~5 個。如果個數少于3個或者多于5個,則會報錯。

icon 的選中顏色默認是 @color/colorPrimary。當然你也可以使用app:itemIconTint=quot;@android:color/whitequot;來自定義,這樣定以后,所有的 icon 顏色都是這個了。

菜單元素文字的默認顏色是 @color/colorPrimary。你可以使用app:itemTextColor=quot;@android:color/whitequot;自定義。

底部導航欄背景顏色默認是當前樣式的背景色(白色/黑色),你可以使用app:itemBackground=quot;@android:color/blackquot;來更改。


Tags: 安卓開發

文章來源:http://www.jianshu.com/p/f32147782005


ads
ads

相關文章
ads

相關文章

ad