1.第一种情况的解决方案

错误可以通过 viewPager2.isSaveEnabled = false得到解决

这部分起作用,因为我们设置isSaveEnabled为false,viewPager 状态不会被保存,它总是从默认位置开始,这意味着来自后堆栈的任何片段将始终从下标 0(默认)开始
2.第二种情况的解决方案
ViewPager2 上遇到了这样的问题。经过大量测试不同方法的努力后,这对我有用

public void onExitOfYourFragment() {
    viewPager2.setAdapter(null);
}

当你再次回到片段时:

public void onResumeOfYourFragment() {
    viewPager2.setAdapter(yourAdapter);
}

1.第三种情况的解决方案

if(recyclerView.adapter == null) 
{recyclerView.adapter = myAdapter}

仅供参考,还有问题请加qq群620211664交流

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐