如何在viewPager中重新启动片段

Ani*_*tha 2 android android-fragments android-viewpager

我想重新启动片段,即在单击刷新按钮时调用片段的onCreate和onCreateView方法.怎么实现呢?

PPa*_*san 5

答案可能在于适配器的getItemPosition()方法ViewPager.引用Android开发者博客:

如果您尝试在ViewPager中替换Views,仅仅更改适配器后面的数据集并调用notifyDataSetChanged()是不够的.您还需要确保已正确实现getItemPosition(Object object)并为已更改的项返回POSITION_NONE并返回POSITION_UNCHANGED或未更改的项的实际位置.

如果您调用notifyDataSetChanged()适配器,getItemPosition()则设置为:

@Override
public int getItemPosition(Object object) {
    return PagerAdapter.POSITION_NONE;
}
Run Code Online (Sandbox Code Playgroud)

然后每个片段将从头开始重新创建.