函數:setUnboundedRipple
這是默認的點擊的動畫
咱們用代碼修改一下:git
mGlueTabLayout.setUnboundedRipple(true);
這是以後的效果:
github
函數:setTabIndicatorFullWidth
這是默認的效果
咱們用代碼修改一下:函數
mGlueTabLayout.setTabIndicatorFullWidth(false);
這是以後的效果:
動畫
函數:setSelectedTabIndicator
這是默認的效果
咱們用代碼改變:spa
GradientDrawable gradientDrawable = new GradientDrawable(); gradientDrawable.setCornerRadius(dp2px(2)); mGlueTabLayout.setSelectedTabIndicator(gradientDrawable);
我改變了其的直角,變爲了圓角,看效果吧:
您也能夠在res/drawable
文件夾下寫個xml文件傳入setSelectedTabIndicator(@DrawableRes int tabSelectedIndicatorResourceId)
,效果是同樣的。3d
這個動畫很好看,我也在一些應用上看到它的影子,好比微博。code
因此,我寫了GlueTabLayout
簡單擴展了TabLayout
,添加了這個動畫,GlueTabLayout
本質就是TabLayout
,一點未變,您怎麼用TabLayout
,就能夠怎麼使用GlueTabLayout
,是否是很友好,哈哈。
我還添加了一個TabLayout
沒有提供的方法,我添加了精確設置下劃線指示器寬度的方法。xml
我把它開源了,用以方便有須要的人,更詳細的內容移步 GitHub 。blog
以上 :)ip