本文主要是介绍更改TabLayout选中的背景色,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
项目中有这种需求,google了下发现了解决方案,摘录如下方便大家排查.
原文链接
原理是利用selector
第一步
在drawable文件夹下建立文件 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>
最后
建立一个style
<style name="Base.Widget.Design.TabLayout" parent="android:Widget"><item name="tabBackground">@drawable/tab_background</item><item name="tabIndicatorColor">#ff00ff</item><item name="tabIndicatorHeight">2dp</item>
</style>
重点使用该属性<item name="tabBackground">@drawable/tab_background</item>
效果图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UblNSvfN-1678534564697)(null)]
这篇关于更改TabLayout选中的背景色的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!