由于项目中多个地方用到ViewPager组件,而每个ViewPager都写一个适配器,这有点多余。
因此打造一个通用的FragmentPagerAdapter,问题就解决了。
/**
* Created by xinwen on 2017/5/10.
*/
public class CommonPagerAdapter extends FragmentPagerAdapter {
private List<Fragment> mFragments = new ArrayList<>();
private List<String> mTitles = new ArrayList<>();
public CommonPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return mFragments.get(position);
}
@Override
public int getCount() {
return mFragments.size();
}
@Override
public CharSequence getPageTitle(int position) {
return mTitles.get(position);
}
/**
* 添加
*
* @param fragment
* @param title
*/
public void addFragment(Fragment fragment, String title) {
mFragments.add(fragment);
mTitles.add(title);
}
}