(Android View)花樣底部導航欄使用(BottomNavigationBar)

BottomNavigationView 

首先回顧下這個導航欄,發現已經滿足不了我們的需求了,我們現在來使用一下其他的開源組件。

1.現在風評較好的BottomNavigation

giehub地址:點擊打開鏈接

這個東西使用起來也十分的簡單

首先在module級gradle中添加依賴。

 

compile 'com.ashokvarma.android:bottom-navigation-bar:2.0.4'

接着正常加入佈局文件

<com.ashokvarma.bottomnavigation.BottomNavigationBar
    android:layout_gravity="bottom"
    android:id="@+id/navigation_bar_main"
    android:layout_width="match_parent"
    android:layout_height="50dp"/>

接着就是主界面中的設置了,我的風格就是能解釋的儘量寫在代碼註釋裏,反正是學習過程,也沒有什麼代碼檢視了,Low就Low吧。

 BottomNavigationBar navigation_bar_main;//注意實例化
    private void setNaviBar() {
/*      1.設置按鈕模式  setMode()
        MODE_DEFAULT 自動模式
        if(item>=3)MODE_FIXED模式elseMODE_SHIFTING模式
         MODE_FIXED 固定模式
         未選中的Item()會顯示文字,沒有切換動畫。
         ODE_SHIFTING 切換模式
         就是未選中的Item不會顯示文字,選中的會顯示文字。又切換動畫*/
        navigation_bar_main.setMode(BottomNavigationBar.MODE_SHIFTING);
      /*  設置背景風格    setBackgroundStyle()
         BACKGROUND_STYLE_STATIC 靜態的
         BACKGROUND_STYLE_RIPPLE  動態水波紋效果*/
        navigation_bar_main.setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_RIPPLE);

        /*添加並設置圖標、圖標的顏色和文字
        setInActiveColor() 設置Item未選中顏色
        setActiveColor() 設置Item選中顏色

        setActiveColor()
        前面設置BACKGROUND_STYLE_STATIC下,表示選中Item的圖標和文本顏色。
        BACKGROUND_STYLE_RIPPLE下,表示整個容器的背景色。

        setBarBackgroundColor():
        前面設置BACKGROUND_STYLE_STATIC,表示整個容器的背景色。
        BACKGROUND_STYLE_RIPPLE下,表示選中Item的圖標和文本顏色。*/
        navigation_bar_main
                //構造函數裏面爲選中的圖片setInactiveIcon非選中的圖片
                .addItem(new BottomNavigationItem(R.drawable.ic_home_black_24dp, "Home").setActiveColorResource(R.color.blue)).setInActiveColor(R.color.white)
                .addItem(new BottomNavigationItem(R.drawable.ic_dashboard_black_24dp, "Books").setActiveColorResource(R.color.orange))
                .initialise();
        //據說設置true爲向下滑動隱藏,但是目前我的設置沒有反應
        navigation_bar_main.setAutoHideEnabled(true);
        //設置選中第一個添加的按鈕
        navigation_bar_main.selectTab(0, false);

    }

值得商榷的一點是navigation_bar_main.setAutoHideEnabled(true);這個方法不知道有毒還是怎麼的,這個方法是這隻向下滑動隱藏,但是我設置了完全沒有反應。大家幫忙看下怎麼回事。

其他人的博客是這麼說的點擊打開鏈接

bottomNavigationBar.hide();//隱藏
bottomNavigationBar.hide(true);//隱藏是否啓動動畫,這裏並不能自定義動畫
bottomNavigationBar.unHide();//顯示
bottomNavigationBar.hide(true);//隱藏是否啓動動畫,這裏並不能自定義動畫

2.未完待續,繼續收集中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章