所以效果会是每个单独的标签除了文字颜色会有点大的变化。我试过使用setCustomTabView(),但它只适用于第一个选项卡,而我的其他选项卡未显示。

最佳答案

下面是一个使用setCustomTabView()的示例:
在您的布局中,有viewpager和slidingtable布局:

<com.yourProject.SlidingTabLayout  <--- IMPORT latest from Google[*see link]
        android:id="@+id/sliding_tabs"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

<android.support.v4.view.ViewPager android:id="@+id/viewPager"
                                     android:layout_marginTop="@dimen/text_size_medium"
                                       android:layout_width="match_parent"
                                       android:layout_height="match_parent">

    </android.support.v4.view.ViewPager>

https://github.com/google/iosched/blob/master/android/src/main/java/com/google/samples/apps/iosched/ui/widget/SlidingTabLayout.java在这里您还可以找到SlidingTaStrip,它也是必需的。
然后在片段或活动中,设置滑动选项卡的自定义视图,如下所示:
 viewPager = (ViewPager) rootView.findViewById(R.id.viewPager);
 mSlidingTabLayout = (SlidingTabLayout) rootView.findViewById(R.id.sliding_tabs);
    mSlidingTabLayout.setSelectedIndicatorColors(getResources().getColor(R.color.accent));
    mSlidingTabLayout.setCustomTabView(R.layout.sliding_tab_layout_custom, R.id.item);
    mSlidingTabLayout.setDistributeEvenly(false);
    mSlidingTabLayout.setViewPager(viewPager);

选项卡的自定义布局为:
../layout/sliding_tab_layout.xml格式
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="horizontal">
    <TextView
        android:id="@+id/item"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="@dimen/text_size_small"
        android:textColor="@color/primary"
        android:textSize="@dimen/text_size_medium"/>
</LinearLayout>

这个例子是经过测试的,所以应该是有效的。希望有帮助:)

10-04 14:57