我的Android应用在ViewPager中为PagerTabStrip自定义字体颜色

amb*_*bit 5 android-viewpager

我需要在ViewPager中为我的Android应用更改PagerTabStrip的字体颜色.这是相同的xml布局.有什么方法可以做到这一点吗?

<android.support.v4.view.ViewPager
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/head"
    android:id="@+id/myfivepanelpager">

        <android.support.v4.view.PagerTabStrip
         android:id="@+id/pgstrip"
        android:layout_width="fill_parent"
        android:background="@color/strip"
        android:layout_height="@dimen/pagerstripht"
        android:layout_gravity="top"
        />

    </android.support.v4.view.ViewPager>
Run Code Online (Sandbox Code Playgroud)

小智 12

在你的代码中:

<android.support.v4.view.PagerTabStrip
         android:id="@+id/pgstrip"
        android:layout_width="fill_parent"
        android:background="@color/strip"
        android:layout_height="@dimen/pagerstripht"
        android:layout_gravity="top"
        />
Run Code Online (Sandbox Code Playgroud)

我认为添加android:textColor ="#000"会改变文本颜色.

  • 它实际上工作!! 但我不知道为什么android提示没有显示这个特定的选项 (5认同)
  • 不知道为什么这个答案被拒绝了?!设置`textColor`属性确实会改变`PagerTabStrip`中文本的颜色. (3认同)

Roy*_*nto 11

如果您还没有找到,代码如下

PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pager_title_strip);
pagerTabStrip.setDrawFullUnderline(true);
pagerTabStrip.setTabIndicatorColor(Color.RED);
Run Code Online (Sandbox Code Playgroud)


Yur*_*nko 10

获取PagerTabStrip的子视图,并检查它是否是TextView的实例.如果是,请设置文字颜色:

PagerTabStrip mPagerTabStrip = (PagerTabStrip) findViewById(R.id.pgstrip);
for (int i = 0; i < mPagerTabStrip.getChildCount(); ++i) {
    View nextChild = mPagerTabStrip.getChildAt(i);
    if (nextChild instanceof TextView) {
        TextView textViewToConvert = (TextView) nextChild;
        textViewToConvert.setTextColor(getResources().getColor(R.color.primary_text_color_dark_gray));
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 如果对代码有一点解释,我会赞成这一点. (2认同)