Android viewpager Android ViewPager有过时的视图

Android viewpager Android ViewPager有过时的视图,android-viewpager,Android Viewpager,我遇到了一个ViewPager问题,在应用程序启动时,尽管刷新了相关PagerAdapter下的列表,但该寻呼机的视图中仍有过时的信息。刷新的最后一步是调用适配器的notifyDataSetChanged方法,但片段最终不会被刷新,至少在最初不会。每当滑动寻呼机导致框架调用适配器的getItem方法时,它们都会被刷新。getItem的Myi实现实例化了一个新片段(使用底层项目列表中的当前数据) 我注意到的一点是,适配器的getItemPosition方法从未被调用以响应notifyDataSet

我遇到了一个ViewPager问题,在应用程序启动时,尽管刷新了相关PagerAdapter下的列表,但该寻呼机的视图中仍有过时的信息。刷新的最后一步是调用适配器的notifyDataSetChanged方法,但片段最终不会被刷新,至少在最初不会。每当滑动寻呼机导致框架调用适配器的getItem方法时,它们都会被刷新。getItem的Myi实现实例化了一个新片段(使用底层项目列表中的当前数据)

我注意到的一点是,适配器的getItemPosition方法从未被调用以响应notifyDataSetChanged调用。SO上的几个帖子指出返回位置_NONE是指示应该重新加载片段的方式。但是getItemPosition从未被调用,所以这没有任何效果

一个谜团是旧碎片从何而来。我认为系统有某种方法可以神奇地重新实例化它们,但我很难理解整个片段生命周期。无论如何,这不是我想要的,至少在没有告诉适配器(或者可能是寻呼机本身?)“请刷新所有内容”的情况下。我以为打电话 notifyDataSetChanged是实现这一点的方法,但它不起作用。就好像PagerAdapter无法通知寻呼机数据现在不同了,它应该请求刷新

我想,问题是:如果寻呼机的基础数据发生了变化,您如何通知它数据已过时,并且它应该请求一个新的片段(或者更新现有的片段)