android – 使TabLayout文本变为粗体

我正在使用 Android设计支持库中的TabLayout并想要设置其文本样式(标题).特别是大胆.如何在XML中实现这一点?
<android.support.design.widget.TabLayout
android:id="@+id/sliding_tabs"
android:layout_width="match_parent"
app:tabTextColor="@color/white"
app:tabSelectedTextColor="@color/white"
app:tabIndicatorColor="@color/accent"
android:layout_height="wrap_content"
app:tabIndicatorHeight="3dp" />

解决方法

首先,必须将其添加到styles.xml:
<style name="TabLayoutTextStyle">
    <item name="android:textSize">16sp</item>
    <item name="android:textStyle">bold</item>
</style>

即使您不想更改文本大小,也必须将其包含在样式中,否则不会显示任何内容.

然后必须使用app:tabTextAppearance而不是style属性将样式应用于TabLayout!

<android.support.design.widget.TabLayout
android:id="@+id/sliding_tabs"
android:layout_width="match_parent"
app:tabTextColor="@color/white"
app:tabSelectedTextColor="@color/white"
app:tabIndicatorColor="@color/accent"
android:layout_height="wrap_content"
app:tabIndicatorHeight="3dp" 
app:tabTextAppearance="@style/TabLayoutTextStyle" />

要启用allcaps,您可以将以下内容添加到TabLayoutTextStyle:

<item name="android:textAllCaps">true</item>

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...