zoukankan      html  css  js  c++  java
  • 更改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>

    效果图

  • 相关阅读:
    NSThread 多线程 三种方式
    CABasicAnimation 核心动画
    图片圆角属性
    GCD
    IOS 推送
    IOS 截图
    UIImage 截图
    UIImageView 动画
    AFN 判断网络状态
    Template 模式
  • 原文地址:https://www.cnblogs.com/matd/p/12757267.html
Copyright © 2011-2022 走看看