Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
3年前关闭。
我将
在某些片段上
但是,如果我切换到
所以问题是:
如何强制
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
3年前关闭。
我将
FragmentPageAdapter
用于ViewPager
与Fragments
。每个Fragment
都包含带有小型图库的适配器。在某些片段上
n
位置,我有更改图库的按钮。当我更新此内部适配器的数据集时,我试图在notifyDataSetChanged()
上调用FragmentPageAdapter
,但它不会刷新视图。但是,如果我切换到
n+2
片段,然后又切换回n
片段,则图库会像应该的那样进行更新。看起来它已将其存储在内存中...所以问题是:
如何强制
FragmentPageAdapter
仅在当前位置(当前可见)片段上重新创建视图? 最佳答案
解决方案是覆盖getItemPosition(Object)
并返回POSITION_NONE
。
通过检查片段在适配器中的位置是否已更改,这将强制PagerAdapter
重新创建已加载的片段。既然有,并且您要用“较新的”片段替换“旧的”片段,您就告诉适配器当前的片段没有位置,您需要它重新加载该位置的内容。
10-05 20:22