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