您好,登錄后才能下訂單哦!
怎么在Android中使用BottomNavigationBar實現一個導航欄功能?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
基本屬性
setActiveColor //選中item的字體顏色 setInActiveColor //未選中Item中的顏色 setBarBackgroundColor//背景顏色 setMode(BottomNavigationBar.MODE_FIXED) //填充模式,未選中的Item會顯示文字,沒有換擋動畫 setMode(BottomNavigationBar.MODE_SHIFTING) //換擋模式,未選中的Item不會顯示文字,選中的會顯示文字 setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_STATIC) //點擊的時候沒有水波紋效果 setBackgroundStyle(BottomNavigationBar.BACKGROUND_STYLE_RIPPLE) //點擊的時候有水波紋效果,也就是導航條的背景色是你設置的處于選中狀態的 Item的顏色 addItem(new BottomNavigationItem(R.mipmap.ic_launcher_round, mTitles[0]) //添加一個BottomNavigationItem子項,設置圖標和文字 setInactiveIcon(ContextCompat.getDrawable(this, R.mipmap.ic_launcher)) //添加選中時的變更圖標 setFirstSelectedPosition(0) //默認選中下標為0的item setBadgeItem() //添加BadgeItem標記 initialise() //繪制,要放在設置最后
setTabSelectedListener監聽器
bottomNavigationBar.setTabSelectedListener(new BottomNavigationBar.OnTabSelectedListener() { @Override public void onTabSelected(int position) { //獲得選中狀態時觸發,可以做fragmengt頁面切換 Toast.makeText(MainActivity.this,"當前選中"+position,Toast.LENGTH_SHORT).show(); } @Override public void onTabUnselected(int position) { //當失去焦點不被選中的時候觸發 Toast.makeText(MainActivity.this,position+"失去了焦點",Toast.LENGTH_SHORT).show(); } @Override public void onTabReselected(int position) { //觸發不了,我也母雞 } });
BadgeItem標記
1.五角星標記
mShapeBadgeItem = new ShapeBadgeItem() .setShapeColorResource(R.color.colorPrimary) //背景顏色 .setGravity(Gravity.TOP ) //位置 默認右上 .setAnimationDuration(200)//動畫時長 .setHideOnSelect(false)//true當選中狀態時消失,非選中狀態再次顯示 .show(); hide() //隱藏
2.文本標記
mTextBadgeItem = new TextBadgeItem() .setBorderWidth(4)//文本大小 .setGravity(Gravity.TOP )//位置 默認右上 .setBackgroundColorResource(R.color.colorAccent)//背景顏色 .setAnimationDuration(200)//動畫時間 .setText("3") .setHideOnSelect(false)//true當選中狀態時消失,非選中狀態再次顯示 .show();
關于怎么在Android中使用BottomNavigationBar實現一個導航欄功能問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。