必须的xml文件:
<android.support.v4.view.ViewPager
android:id="@+id/content_viewpager"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center"
android:background="#ffffff"
android:flipInterval="30" //flip:替换,翻转;Interval:间隔(每一个view显示的时间)
android:persistentDrawingCache="animation" /> //持久化绘画缓存
public class RankingFragmentPagerAdapter extends FragmentPagerAdapter {
private List<Fragment> listFragment = new ArrayList<Fragment>();
private BaseActivity ba;
private int viewpagerId;
public RankingFragmentPagerAdapter(FragmentManager fm) {
super(fm);
}
public RankingFragmentPagerAdapter(BaseActivity ba,int viewpagerId,FragmentManager fm,List<Fragment> listFragment) {
super(fm);
this.listFragment = listFragment;
this.ba = ba;
this.viewpagerId = viewpagerId;
}
@Override
public Fragment getItem(int position) {
return listFragment.get(position);
}
@Override
public int getCount() {
return listFragment.size();
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ba.getSupportFragmentManager().beginTransaction().add(viewpagerId,listFragment.get(position)).commit();
return listFragment.get(position);
}
@Override
public int getItemPosition(Object object) {
return super.getItemPosition(object);
}
}
MainActivity:
viewpager = (ViewPager) findViewById(R.id.content_viewpager);
pagerAdapter = new RankingFragmentPagerAdapter(this,R.id.content_viewpager,getSupportFragmentManager(),fragmentList);
viewpager.setAdapter(pagerAdapter);
viewpager.setCurrentItem(0);
viewpager.setOnPageChangeListener(this);
viewpager.setOffscreenPageLimit(3);