如何将PagerTabStrip的TextStyle设置为Bold?

Jai*_*dra 17 android styles android-viewpager

我正在使用PagerTabStripViewPager来显示每个页面的标题.这是我的XML代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:background="@drawable/bg">

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
    >
    <android.support.v4.view.PagerTabStrip
            android:id="@+id/pager_title_strip"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="top"
            android:background="#33b5e5"
            android:textColor="#a4c639"
            android:paddingTop="4dp"
            android:paddingBottom="4dp" />
    </android.support.v4.view.ViewPager>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

我想将textStyle设置为粗体,PagerTabStrip如下所示: android:textStyle="bold".但这是不可能的PagerTabStrip.好像它只有textcolor文本属性.我可以将样式设置为粗体的方式是什么?

Jus*_*tin 43

你需要做的是为文本创建一个样式,然后使用android:textAppearance属性...

也许是这样的:

 <style name="PagerTabStripText">
      <item name="android:textSize">14sp</item>
      <item name="android:textStyle">bold</item>
      <item name="android:textColor">#a4c639</item>
 </style>
Run Code Online (Sandbox Code Playgroud)

然后在你的PagerTabStrip XML中执行以下操作:

 <android.support.v4.view.PagerTabStrip
        android:id="@+id/pager_title_strip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:background="#33b5e5"
        android:paddingTop="4dp"
        android:paddingBottom="4dp" 
        android:textAppearance="@style/PagerTabStripText"/>
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一下,eclipse并没有在android.support.v4.view.PagerTabStrip中自动提供android:textAppearance.但不要混淆,textAppearance适用于PagerTabStrip. (12认同)