<LinearLayout 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:orientation="vertical" > <com.viewpagerindicator.TabPageIndicator android:id="@+id/vpi_indicator" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/base_action_bar_bg" > </com.viewpagerindicator.TabPageIndicator> <android.support.v4.view.ViewPager android:id="@+id/vp_news" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" > </android.support.v4.view.ViewPager> </LinearLayout>
3.声明viewpagerindicator,java代码:java
vp_news.setAdapter(new NewsTabPagerAdapter());//给viewpager设置数据适配器 // ViewPagerIndicator声明 TabPageIndicator indicator = (TabPageIndicator) mActivity .findViewById(R.id.vpi_indicator); indicator.setViewPager(vp_news);// 绑定必需要在viewpager设置好数据适配器以后
4.viewpager数据适配器类中重写getPageTitle方法,java代码:android
@Override//获取title,从而indicator能够今后获取title public CharSequence getPageTitle(int position) { return mChildren.get(position).title;//这里具体实现方法本身写 }
5.在清单文件中给ViewpagerIndicator所在的activity设置主题,清单文件:ide
<activity android:name=".MainActivity" android:theme="@style/Theme.PageIndicatorDefaults" />
其余样式可在该主题里改,得出一个黑色的背景,如图:布局
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/fl_main" android:background="#fff" android:layout_width="match_parent" android:layout_height="match_parent" > </FrameLayout>