Текст заголовка вкладки TabLayout малими літерами


77

У android.support.design.widget.TabLayoutмоїй програмі я використовував Min SDK 15.

За замовчуванням заголовок вкладки приймається великими літерами, але я хочу, щоб це було зроблено в "textCapsWord". Я спробував додати стиль, як запропоновано тут і тут . Але нещасні обидва не працюють.

Відповіді:


260

Якщо ви додасте наступний рядок до свого, 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 спробуйте ці команди app: tabMode = "фіксований" app: tabMode = "scrollable" Я також використовую його, і весь текст видно повністю
Mustanser Iqbal

2
@MustanserIqbal за допомогою @android:style/TextAppearance.Widget.TabWidgetтексту виглядає не всім великим, але текст більше не виділений жирним шрифтом. Чи є у вас підказка, як це виправити, або за допомогою іншого стилю ТІЛЬКИ виписати великі літери?
Бруно Бієрі

2
Не вдаєтьсяcom.google.android.material.tabs.TabLayout
Фарід

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>
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.