1. 程式人生 > >修改BottomNavigationView的Item超過3個時的動畫效果

修改BottomNavigationView的Item超過3個時的動畫效果

今天在做專案,使用BottomNavigationView新增多個item,當item超過三個的時候title文字被隱藏,只有選中的時候才會顯示,這不符合專案的設計需求,遂尋求方法做修改。

百度谷歌一番後發現基本都是使用下面這個反射的方法去掉動畫效果:

然後我也按照這個方法來處理,發現 item.setShiftingMode(false);報錯了,然後搜尋shift發現這個方法item.setShifting(false);執行,然而並沒有任何效果。

然後我發現我的design和v7包的版本較高:

好吧,那就繼續找,最後在國外的網站上找到了答案:

As Jolanda Verhoef pointed out the new Support library (28.0.1-alpha1

) and also the new Material Components library (1.0.0-beta01) offers a public property which can be used to manipulate the shifting mode over 3 menu items.

在你的BottomNavigationView佈局下,labelVisibilityMode有多個動畫選項,可根據需求修改:

估計是在高版本提供了多個動畫的選項,修改更加便捷,低版本的可繼續使用之前的反射方法修改!

希望可以給大家提供幫助,喜歡的可以點個關注哦!