通常情况下我们要修改TabLayout下划线(tabIndicator)的宽度的话,常用的有两种方案:
1,反射重新计算宽度
2,通过setCustomView的方式自定义item
第一种在Android 9.0已经失效了,第二种如果使用场景较多,也麻烦
当然也可以选择第三方库,但是一般不这么做
在Android design v28 的版本中,官方对TabLayout做了优化,只需要一个属性即可设置tabIndicator的宽度了
app:tabIndicatorFullWidth="false"
效果:
如果不需要,基本使用看这里:
https://blog.csdn.net/yechaoa/article/details/78259701
解决9.0反射失效的看这里:
https://www.jianshu.com/p/cf4ed386efe9