首先,drawable文件夹中的selector,tab_background.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/tab_background_selected" android:state_selected="true" />
<item android:drawable="@drawable/tab_background_unselected" android:state_selected="false" android:state_focused="false" android:state_pressed="false" />
</selector>
然后,drawable文件夹中的tab_background_selected.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#d13fdd1a" />
</shape>
然后,drawable文件夹中的tab_background_unselected.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#3F51B5" />
</shape>
最后,在styles.xml中,指定要使用的选择器,并指定选项卡指示器样式,因为tab_background.xml
现在将忽略TabLayout中的属性:
app:tabBackground="@drawable/tab_select_background"
至此,设置切换选中时 tab 的背景色功能已完成