Android使用BottomNavigationBar實(shí)現(xiàn)導(dǎo)航欄功能
基本屬性
setActiveColor //選中item的字體顏色 setInActiveColor //未選中Item中的顏色 setBarBackgroundColor//背景顏色 setMode(BottomNavigationBar.MODE_FIXED) //填充模式,未選中的Item會顯示文字,沒有換擋動畫 setMode(BottomNavigationBar.MODE_SHIFTING) //換擋模式,未選中的Item不會顯示文字,選中的會顯示文字 setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC) //點(diǎn)擊的時候沒有水波紋效果 setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_RIPPLE) //點(diǎn)擊的時候有水波紋效果,也就是導(dǎo)航條的背景色是你設(shè)置的處于選中狀態(tài)的 Item的顏色 addItem(new BottomNavigationItem(R.mipmap.ic_launcher_round, mTitles[0]) //添加一個BottomNavigationItem子項(xiàng),設(shè)置圖標(biāo)和文字 setInactiveIcon(ContextCompat.getDrawable(this, R.mipmap.ic_launcher)) //添加選中時的變更圖標(biāo) setFirstSelectedPosition(0) //默認(rèn)選中下標(biāo)為0的item setBadgeItem() //添加BadgeItem標(biāo)記 initialise() //繪制,要放在設(shè)置最后
setTabSelectedListener監(jiān)聽器
bottomNavigationBar.setTabSelectedListener(new BottomNavigationBar.OnTabSelectedListener() { @Override public void onTabSelected(int position) { //獲得選中狀態(tài)時觸發(fā),可以做fragmengt頁面切換 Toast.makeText(MainActivity.this,"當(dāng)前選中"+position,Toast.LENGTH_SHORT).show(); } @Override public void onTabUnselected(int position) { //當(dāng)失去焦點(diǎn)不被選中的時候觸發(fā) Toast.makeText(MainActivity.this,position+"失去了焦點(diǎn)",Toast.LENGTH_SHORT).show(); } @Override public void onTabReselected(int position) { //觸發(fā)不了,我也母雞 } });
BadgeItem標(biāo)記
1.五角星標(biāo)記
mShapeBadgeItem = new ShapeBadgeItem() .setShapeColorResource(R.color.colorPrimary) //背景顏色 .setGravity(Gravity.TOP ) //位置 默認(rèn)右上 .setAnimationDuration(200)//動畫時長 .setHideOnSelect(false)//true當(dāng)選中狀態(tài)時消失,非選中狀態(tài)再次顯示 .show(); hide() //隱藏
2.文本標(biāo)記
mTextBadgeItem = new TextBadgeItem() .setBorderWidth(4)//文本大小 .setGravity(Gravity.TOP )//位置 默認(rèn)右上 .setBackgroundColorResource(R.color.colorAccent)//背景顏色 .setAnimationDuration(200)//動畫時間 .setText("3") .setHideOnSelect(false)//true當(dāng)選中狀態(tài)時消失,非選中狀態(tài)再次顯示 .show();
官方all.gif
總結(jié)
以上所述是小編給大家介紹的Android BottomNavigationBar導(dǎo)航欄功能的實(shí)現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
android實(shí)現(xiàn)可拖動的浮動view
這篇文章主要為大家詳細(xì)介紹了android實(shí)現(xiàn)可拖動的浮動view,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04Android中g(shù)son、jsonobject解析JSON的方法詳解
JSON即JavaScript Object Natation, 它是一種輕量級的數(shù)據(jù)交換格式, 與XML一樣, 是廣泛被采用的客戶端和服務(wù)端交互的解決方案.接下來由腳本之家小編給大家介紹Android中g(shù)son、jsonobject解析JSON的方法,感興趣的朋友一起學(xué)習(xí)吧2016-02-02舉例講解Android應(yīng)用中SimpleAdapter簡單適配器的使用
這篇文章主要介紹了Android應(yīng)用中SimpleAdapter簡單適配器的使用例子,SimpleAdapter經(jīng)常在ListView被使用,需要的朋友可以參考下2016-04-04Android中GridView布局實(shí)現(xiàn)整體居中方法示例
最近在工作中遇到了GridView布局的相關(guān)問題,通過查找相關(guān)資料終于解決了,所以下面這篇文章主要給大家介紹了關(guān)于Android中GridView布局實(shí)現(xiàn)整體居中的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒。2017-09-09DrawerLayout結(jié)合Tollbar實(shí)現(xiàn)菜單側(cè)滑效果
這篇文章主要為大家詳細(xì)介紹了DrawerLayout結(jié)合Tollbar實(shí)現(xiàn)菜單側(cè)滑效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12Android中利用SurfaceView制作抽獎轉(zhuǎn)盤的全流程攻略
這篇文章主要介紹了Android中利用SurfaceView制作抽獎轉(zhuǎn)盤的全流程,從圖案的繪制到轉(zhuǎn)盤的控制再到布局,真的非常全面,需要的朋友可以參考下2016-04-04解決ViewPager和SlidingPaneLayout的滑動事件沖突問題
下面小編就為大家分享一篇解決ViewPager和SlidingPaneLayout的滑動事件沖突問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01