1.依赖包
2.在布局中设置好com.viewpagerindicator.TabPageIndicator(背景)和android.support.v4.view.ViewPager
<com.viewpagerindicator.TabPageIndicator
android:id="@+id/indicator"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/base_action_bar_bg" >
</com.viewpagerindicator.TabPageIndicator>
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/indicator" >
</android.support.v4.view.ViewPager>
3.粘贴代码setData() ,内部类TabPageIndicatorAdapter (可以实现联动但是很难看)
// 全局变量
private FragmentPagerAdapter adapter;
private TabPageIndicator indicator;
private void setData(final List<String> list) {
// ViewPager的adapter
adapter = new TabPageIndicatorAdapter(getSupportFragmentManager(), list);
ViewPager pager = (ViewPager) findViewById(R.id.pager);
pager.setAdapter(adapter);
// 实例化TabPageIndicator然后设置ViewPager与之关联
indicator = (TabPageIndicator) findViewById(R.id.indicator);
indicator.setViewPager(pager);
// 如果我们要对ViewPager设置监听,用indicator设置就行了
indicator.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
Toast.makeText(getApplicationContext(), list.get(arg0),
Toast.LENGTH_SHORT).show();
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
/**
* ViewPager适配器
*
* @author len
*
*/
class TabPageIndicatorAdapter extends FragmentPagerAdapter {
private List<String> list;
public TabPageIndicatorAdapter(FragmentManager fm, List<String> list) {
super(fm);
this.list = list;
}
@Override
public Fragment getItem(int position) {
// 新建一个Fragment来展示ViewPager item的内容,并传递参数
Fragment fragment = new ItemFragment();
Bundle args = new Bundle();
args.putString("arg", list.get(position));
fragment.setArguments(args);
return fragment;
}
@Override
public CharSequence getPageTitle(int position) {
return list.get(position % list.size());
}
@Override
public int getCount() {
return list.size();
}
}
4.粘贴drawable的。xml文件和hdrawable的图片,style要直接粘贴过去,否则直接报错(不过即使把这两行报错删掉也不影响)
5.修改mainfest的theme为
android:theme="@style/StyledIndicators"