我认为显示问题的最简单方法是下面的gif。当我在主页片段上并切换到“最近”时,“最近”是带有ViewPager和TabLayout的片段,应该在recyclerView中的项目会正常显示,但是当我返回“主页片段”并返回“最新”时,该项目不再存在。我认为,这与以下事实有关:即使我调用了最近片段的AND (OwnedByTeamJ='C - O Review'
OR OwnedByTeamJ is null)
,但回到最近片段时,ViewPager中的第一个“全部”片段却没有被调用称为onCreate()
。
但是它正在调用onCreate()
,我在那里检查了RecyclerView的列表大小,并且其中仍然有该项目,只是没有显示。
我该如何解决?
是否有一种方法可以强制onResume()
在它的片段上调用FragmentPagerAdapter
,就像回去时的'All'片段一样?
答案 0 :(得分:0)
找到了解决方案,甚至都不知道在哪里查找问题,因此我没有发布有问题的代码以免使时间太长。
在ViewPager
中使用Fragment
时,在创建getActivity().getSupportFragmentManager()
时不要使用FragmentPagerAdapter
,而应使用getChildFragmentManager()
。
因此,在编码方面,请使用以下代码:
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getActivity(), getChildFragmentManager());
代替:
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getActivity(), getActivity().getSupportFragmentManager());