如何设置选项卡主机指示器颜色的颜色我想将浅蓝色默认颜色更改为红色。
我需要以编程方式进行此操作,因为我正在以编程方式制作选项卡。
我做了一些研究并查看了这个示例,但它对我不起作用。使用编程方法。
TabWidget current tab bottom line color
谢谢
最佳答案
您可以按照 linked question 中的解决方案以编程方式执行此操作,甚至可以根据需要更改颜色。你提到,加上一个ColorFilter
调整颜色。
所以:
- 创建适当的可绘制对象。如其中一个答案所述,最简单的方法是使用 https://jgilfelt.github.io/android-actionbarstylegenerator/
- 将
tab_indicator_ab_example.xml
(在 drawable 中)加上每个 drawable 密度的 6 个关联的 png 文件 (tab_*.png)。 - 创建选项卡后,使用遍历
TabWidget
subview 的代码来设置它们的背景,但是: - 不是按原样设置可绘制对象,而是使用滤色器将其颜色更改为所需的颜色。
代替这段代码:
for(int i = 0; i < widget.getChildCount(); i++) {
... /* same as before */
v.setBackgroundResource(R.drawable.your_tab_selector_drawable);
}
这样写:
for(int i = 0; i < widget.getChildCount(); i++) {
... /* same as before */
Drawable d = getResources().getDrawable(R.drawable.tab_indicator_ab_example);
d.setColorFilter(Color.GREEN, PorterDuff.Mode.SRC_IN);
v.setBackgroundDrawable(d);
}
关于android - 设置颜色选项卡主机指示器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27609989/