我有一个ViewPager
里面的FragmentActivity
。使用ViewPager
aFragmentPagerAdapter
并具有以下值得注意的方法:
@Override
public Fragment getItem(int position) {
return ChildFragment.newInstance(MyActivity.this);
}
@Override
public int getItemPosition(Object object) {
return POSITION_NONE;
}
在其中一个子片段中,我修改了 ViewPager 的适配器,以便子片段的顺序发生变化。要强制 ViewPager 更新以反映此更改,我调用:
mViewPager.getAdapter().notifyDataSetChanged();
但是我得到了这个例外:
java.lang.IllegalStateException: Recursive entry to executePendingTransactions
如果我用 ASyncTask 调用 notifyDataSetChanged() 异常就会消失,但 ViewPager 不会更新它的视图。
有谁知道在调用 notifyDataSetChanged() 时强制 ViewPager 重新加载其子视图的正确方法?
谢谢