TabPagerIndicator自定义实现与样式优化

TabPagerIndicator 的自定义玩法,真的是蛮有用的一招。原生的TabLayout虽然也能用,但样式太死板,多设计稿压根儿对不上。这时候自定义一个TabPagerIndicator,你就能自由控制标题长度、字体、颜色这些细节,界面更贴合产品风格。

重写onDraw(),加点逻辑控制每个 Tab 的宽度,设置LayoutParams就搞定了。像遇到文字太长的标题,用ellipsize加省略号也挺方便。或者根据文字宽度动态调字体大小,也能显示不全的问题。

颜色样式这块也能玩得灵活。换个选中和未选中的Drawable,甚至自己画个边框都不难。你还可以引入自定义字体,比如加个Typeface,视觉效果立马高一个档次。

实际项目里,你会写一个自己的类,比如MyTabPageIndicator,继承个TabLayout啥的,自己加上addTab()setViewPager()这些方法。配合监听器OnTabSelectedListener,逻辑起来更顺手。

布局文件里,直接引用你的组件类,再通过 XML 属性控制样式,像android:textSizeandroid:ellipsize这些都能直接用。如果你习惯用代码动态设置,也没问题。,想怎么调就怎么调。

如果你经常跟ViewPager打交道,又对默认TabLayout的样式不太满意,自定义一个TabPagerIndicator真的蛮值的。灵活度高,配合 ViewPager 用起来还挺爽。

rar 文件大小:9.65MB