一、修改点击的动画
函数:setUnboundedRipple
这是默认的点击的动画
我们用代码修改一下:
mGlueTabLayout.setUnboundedRipple(true);
这是之后的效果:
二、设置下划线指示器的宽度不要填充完(动态的根据TabView的宽度来设置自身的宽度)
函数:setTabIndicatorFullWidth
这是默认的效果
我们用代码修改一下:
mGlueTabLayout.setTabIndicatorFullWidth(false);
这是之后的效果:
三、设置下划线指示器的样式
函数:setSelectedTabIndicator
这是默认的效果
我们用代码改变:
GradientDrawable gradientDrawable = new GradientDrawable();
gradientDrawable.setCornerRadius(dp2px(2));
mGlueTabLayout.setSelectedTabIndicator(gradientDrawable);
我改变了其的直角,变为了圆角,看效果吧:
您也可以在res/drawable
文件夹下写个xml文件传入setSelectedTabIndicator(@DrawableRes int tabSelectedIndicatorResourceId)
,效果是一样的。
这个您也许也需要
这个动画很好看,我也在一些应用上看到它的影子,比如微博。
所以,我写了GlueTabLayout
简单扩展了TabLayout
,添加了这个动画,GlueTabLayout
本质就是TabLayout
,一点未变,您怎么用TabLayout
,就可以怎么使用GlueTabLayout
,是不是很友好,哈哈。
我还添加了一个TabLayout
没有提供的方法,我添加了精确设置下划线指示器宽度的方法。
我把它开源了,用以方便有需要的人,更详细的描述移步 GitHub 。
以上 :)
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦