android - TabLayout Indicator 自定义

标签 android android-tablayout

我一直在寻找如何将 Tablayout 中的指示器更改为圆形,就像这样 enter image description here

但我不知道该怎么做,任何帮助!

最佳答案

来自source code ,标签指示器定义为:

<style name="Base.Widget.Design.TabLayout" parent="android:Widget">
        <item name="tabMaxWidth">@dimen/design_tab_max_width</item>
        <item name="tabIndicatorColor">?attr/colorAccent</item>
        <item name="tabIndicatorHeight">2dp</item>
        <item name="tabPaddingStart">12dp</item>
        <item name="tabPaddingEnd">12dp</item>
        <item name="tabBackground">?attr/selectableItemBackground</item>
        <item name="tabTextAppearance">@style/TextAppearance.Design.Tab</item>
        <item name="tabSelectedTextColor">?android:textColorPrimary</item>
    </style>

tabIndicatorColor属性定义为:

<declare-styleable name="TabLayout">
        <attr name="tabIndicatorColor" format="color"/>
        <attr name="tabIndicatorHeight" format="dimension"/>

所以我相信你不能把它改成可绘制的(形状),你只能改变它的颜色。

另一种方法是为选项卡定义自定义 View 并自己处理指示器状态

关于android - TabLayout Indicator 自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36060196/

相关文章:

java - 获取选定的回收 View 的文本(使用 FireBase)

android - 如何在android中通过套接字建立客户端到客户端的语音通话

android - 如何在tablayout android中设置带有图标的文本

android - 错误无法解析符号 TabLayout 和“设计”

android - TabLayout设置ViewPager时出现空指针异常

android - 选项卡布局内容未显示在 fragment 布局内

android - 当我在 fragment 之间滑动时,tabindicator 不会在 tablayout 中从一个选项卡滑动到另一个选项卡。字体的突出显示也没有改变

android - 尝试将不透明图像附加到非不透明 ImageWriter 中,反之亦然

android - 通过 UDP 套接字发送字符串

安卓 ELM327/OBD2 协议(protocol)