TabLayout选项卡标题文本(小写)


Answers:


258

如果将以下行添加到您的行中,TabLayout则该行应该有效:

app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"

像这样使用它:

<android.support.design.widget.TabLayout
                    android:id="@+id/tabLayout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    app:tabIndicatorColor="@android:color/white"
                    app:tabIndicatorHeight="2dp"
                    app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"
                    app:tabSelectedTextColor="@android:color/white"
                    app:tabTextColor="@android:color/white" />

1
嗨,我已经尝试过您的代码了。效果很好,但是标签文本出现了问题。我的标签文本有些冗长,因此部分文本不可见。我正在尝试调整文本大小,但不走运。当我删除您的代码并尝试根据我们提到的大小修改选项卡文本时。请提出原因。
Deepak

@Deepak尝试这些命令app:tabMode =“ fixed” app:tabMode =“ scrollable”我也在使用它,并且所有文本都是完全可见的
Mustanser Iqbal

2
@MustanserIqbal通过使用@android:style/TextAppearance.Widget.TabWidget文本显示为非全大写,但文本不再为粗体。您有提示如何解决该问题或仅使用其他样式的字母大写吗?
布鲁诺·比耶里

2
失败com.google.android.material.tabs.TabLayout
Farid

36

您只需使用以下代码自定义标题即可

 <android.support.design.widget.TabLayout
    android:id="@+id/tabs"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:tabIndicatorColor="@color/colorLightPink"
    app:tabMode="scrollable"
    app:tabSelectedTextColor="@color/colorLightPink"
    app:tabTextAppearance="@style/CustomTextAppearanceTab"
    app:tabTextColor="@color/colorGreyDark" /> 

CustomTextAppearanceTab定义写在style.xml文件中的文本样式

<style name="CustomTextAppearanceTab" parent="TextAppearance.Design.Tab">
    <item name="textAllCaps">false</item>
    <item name="android:textAllCaps">false</item>
</style>

13

您可以使用以下代码自定义标签标题的颜色以及小写字母

<android.support.design.widget.TabLayout
    android:id="@+id/sliding_tabs"
    style="@style/customTabLayout"
    android:layout_width="match_parent"
    android:layout_height="@dimen/tabHeight"
    android:background="@color/blurred_black"
    android:divider="@drawable/blue"
    android:stretchColumns="*"
    app:tabMode="fixed" />

customTabLayout是写在style.xml文件中的样式

<style name="customTabLayout" parent="Widget.Design.TabLayout">
    <item name="tabIndicatorColor">@color/default_back</item>
    <item name="tabIndicatorHeight">2dp</item>
    <item name="tabPaddingStart">12dp</item>
    <item name="tabPaddingEnd">12dp</item>
    <item name="textAllCaps">false</item>
    <item name="android:dividerPadding">3dp</item>
    <item name="android:textSize">18sp</item>
    <item name="android:textColor">@color/default_back</item>
    <item name="android:divider">@android:color/black</item>
    <item name="tabBackground">?attr/selectableItemBackground</item>
    <item name="tabSelectedTextColor">@color/default_back</item>
</style>

希望将以其他方式帮助您。


2

这对我有用...

<style name="TabLayoutStyle" parent="Widget.Design.TabLayout">
    <item name="tabTextAppearance">@style/TabTextAppearance</item>
</style>

<style name="TabTextAppearance" parent="TextAppearance.Design.Tab">
    <item name="textAllCaps">false</item>
</style>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.