TabLayout Tab Title text in Lower Case
Solution 1
If you add the following line to your TabLayout
it should work:
app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"
Use it like this:
<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" />
Solution 2
You can just customize and make your title using below code,
<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 defines the text style which is written in style.xml file
<style name="CustomTextAppearanceTab" parent="TextAppearance.Design.Tab">
<item name="textAllCaps">false</item>
<item name="android:textAllCaps">false</item>
</style>
Solution 3
you can customize your tab title with color as well as Lower case by using below code
<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 is style which is written in style.xml file
<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>
Hope will help it out in other way.
Solution 4
This Worked For Me...
<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>
Solution 5
This works for me perfectly.
<com.google.android.material.tabs.TabLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabContentStart="20dp"
app:tabTextAppearance="@android:style/TextAppearance.Widget.TabWidget"
app:tabMode="scrollable">
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="About" />
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Attractions" />
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Things To Do" />
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Best Time To Visit" />
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="How To Reach" />
</com.google.android.material.tabs.TabLayout>
Related videos on Youtube
Krishnakant
Expertise in Android Application Development using Eclipse IDE, Android Studio, Java, XML, JSON, Android SDK and ADT plug-in. Proficient with common Android framework APIs Adequate experience in Mobile Development Life Cycle from concept to delivery, object oriented analysis and design methodologies. Deep knowledge of Android SDK and working on client-server architecture in mobile apps. Successfully developed different component to reduce time and effort of my teammates in coding the application. Hands on knowledge of Android TV SDK, DIAL Protocol implication, SetupBox apps implementation, Leanback API's, Global Search Implementation, Customize TV launcher. Excellent in troubleshooting / debugging. Prior experience of working in Agile environment. By doing R&D, Innovates new ideas and discuss with colleagues trying to create dynamic Environment at work place.
Updated on November 06, 2021Comments
-
Krishnakant over 2 years
I have used
android.support.design.widget.TabLayout
in my application with Min SDK 15.By default it takes Tab title in capitals but I want it to make in "textCapsWord". I tried adding Style as suggested here and here. But unfortunate both doesn't work.
-
Deepak over 6 yearsHi, I have tried your code. It's works great but I have face issue with tab text. My tab text is some what lengthy so some part of the text is not visible. I am try to resize the text but not luck. When I remove your code and try tab text is modified according to our mentioned size. Please suggest what the cause.
-
Mustanser Iqbal over 6 years@Deepak try these commands app:tabMode="fixed" app:tabMode="scrollable" I am also using it and all the text is visible completely
-
Bruno Bieri over 6 years@MustanserIqbal by using
@android:style/TextAppearance.Widget.TabWidget
the text appears non all capital but the text is not bold anymore. Do you have any hint how to fix that or using some other style ONLY un-capitalise the letters? -
Farid over 4 yearsFails on
com.google.android.material.tabs.TabLayout