动态修改ViewPagerIndicator CustomTabPageIndicator Tab标签文字颜色
ViewPagerIndicator 的CustomTabPageIndicator 默认是没有Tab选中修改TextView颜色特效的。
可以通过以下方式实现:
新建viewpager_title_textcolor.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Non focused states --> <item android:state_focused="false" android:state_pressed="false" android:state_selected="false" android:color="#99000000"/> <item android:state_focused="false" android:state_pressed="false" android:state_selected="true" android:color="#FF00A639"/> <!-- Focused states --> <item android:state_focused="true" android:state_pressed="false" android:state_selected="false" android:color="#99000000"/> <item android:state_focused="true" android:state_pressed="false" android:state_selected="true" android:color="#FF00A639"/> <!-- Pressed --> <item android:state_pressed="true" android:color="#FF00A639"/> </selector>
在style.xml中修改CustomTabPageIndicator的android:textColor属性即可:
<style name="CustomTabPageIndicator" parent="Widget.TabPageIndicator"> <item name="android:background">@drawable/custom_tab_indicator</item> <item name="android:textAppearance">@style/CustomTabPageIndicator.Text</item> <item name="android:textColor">@drawable/viewpager_title_textcolor</item> <item name="android:textSize">20sp</item> <item name="android:divider">@drawable/custom_tab_indicator_divider</item> <item name="android:showDividers">middle</item> <item name="android:paddingLeft">8dp</item> <item name="android:paddingRight">8dp</item> <item name="android:paddingTop">5dp</item> <item name="android:fadingEdge">horizontal</item> <item name="android:fadingEdgeLength">8dp</item> </style>