1. 程式人生 > >android:修改PagerTabStrip中的背景顏色,標題字型的樣式、顏色和圖示以及指示條的顏色

android:修改PagerTabStrip中的背景顏色,標題字型的樣式、顏色和圖示以及指示條的顏色

1.修改PagerTabStrip中的背景顏色

我們在佈局中直接設定background屬性即可:

<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/pts"
android:layout_width="wrap_content"
android:layout_height
="50dp" android:layout_gravity="top" android:background="#a05c5ccc" />
</android.support.v4.view.ViewPager>
2.修改指示條的顏色

我們可以在java程式碼中呼叫

pagertabstrip的setTabIndicatorColorResource(R.color.green_complete);方法進行設定

3.修改設定標題字型的樣色,顏色,以及為標題新增圖示,我們可以重寫FragmentStatePagerAdapter的getPageTitle方法:

@Override
public CharSequence getPageTitle(int pos) { SpannableStringBuilder ssb = new SpannableStringBuilder(" " + topics[pos]); // space added before text for Drawable myDrawable = context.getResources().getDrawable( R.drawable.card_visited_like); myDrawable.setBounds(0, 0, myDrawable.getIntrinsicWidth(), myDrawable.getIntrinsicHeight()); ImageSpan span = new
ImageSpan(myDrawable, ImageSpan.ALIGN_BASELINE); ForegroundColorSpan fcs = new ForegroundColorSpan(Color.GREEN);//字型顏色設定為綠色 ssb.setSpan(span, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);//設定圖示 ssb.setSpan(fcs, 1, ssb.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);//設定字型顏色 ssb.setSpan(new RelativeSizeSpan(1.2f), 1, ssb.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); return ssb; }
效果如下圖:


未經允許不得用於商業目的