我正在构建一个具有固定数量的选项卡(3)的屏幕,文本大小为12sp,并根据所选选项卡动态更改文本和指示器颜色。不要滑动标签
为此,我在创建这些选项卡时设置了一个自定义文本视图,因为我想更改文本大小(似乎没有任何方法可以更改TabLayout中的文本大小)和文本颜色。现在,如何检索附加到这些选项卡的文本视图呢?
如果Android Design Library的TabLayout公开了这些方法,那就容易多了。
- 设置指示灯颜色
- 设置指示器高度
- 修改文字大小
- 获取自定义文本视图
我通过使用反射为1和2做了一个解决方案(不确定这是否是最好的方法)。解决3使用自定义文本视图。4.
TabLayout
包含一些您可能需要了解的有用的XML属性:
-
app:tabIndicatorColor
用于设置标签指示器颜色(默认为?attr/colorAccent
(这似乎为您做#1) -
app:tabIndicatorHeight
设置标签指示器高度(这似乎为您做#2) -
app:tabTextAppearance
用于标签文本的自定义TextAppearance
(这可能允许你做#3) -
app:tabTextColor
选项卡的文本颜色(这允许你做#4) -
app:tabSelectedTextColor
选项卡的文本颜色