我在使用Min SDK 15的应用程序中使用了android.support.design.widget.TabLayout
。
默认情况下,它采用大写字母标题,但我希望它在“textCapsWord”中生成。我尝试按建议添加样式here和here。但不幸的是两者都行不通。
答案 0 :(得分:192)
如果您将以下行添加到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 :(得分:14)
您只需使用以下代码自定义标题即可,
<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>
答案 2 :(得分:10)
您可以使用以下代码
自定义带有颜色和小写的标签标题<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>
希望以其他方式帮助它。
答案 3 :(得分:0)
这对我来说非常有效。
<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>
答案 4 :(得分:-1)
这对我有用...
<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>