【发布时间】:2017-08-30 15:54:00
【问题描述】:
我有一个简单的 FragmentPagerAdapter 类
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
PagerAdapter fragment;
fragment = new PagerAdapter(data.get(position));
return fragment;
}
@Override
public int getCount() {
return data.size();
}
@Override
public CharSequence getPageTitle(int position) {
if (position >= pageCount || position < 0)
return null;
return "Profile " + position;
}
}
PagerAdapter 是一个从 Fragment 扩展而来的简单类。 然后我将 SectionsPagerAdapter 的实例设置为我的 ViewPager。
问题来了:
起初我在view pager上有一个页面(数据大小为1),当我得到更多数据时,我调用SectionsPagerAdapter实例notifyDataSetChanged,但是在getItem(int position)方法中而不是位置开始形式0,它从1开始!!!
我该怎么办?获得更多数据后,我想重新创建视图寻呼机 提前致谢
【问题讨论】:
-
再次设置适配器而不是 notifyDataSetChanged
-
你需要设置adapter重置位置,notifyDataSetChanged用于通知adapter有数据变化,所以它只重新绑定数据。
-
另一个你可以使用 viewPager.setCurrentItem(0);
-
@NiranjPatel pervious 适配器?还是新实例?谢谢你:)
标签: android android-fragments android-viewpager fragmentpageradapter