【问题标题】:Resume all fragments at once in viewpager/viewpager2 on calling onResume() method在调用 onResume() 方法时一次在 viewpager/viewpager2 中恢复所有片段
【发布时间】:2021-04-24 17:19:29
【问题描述】:

当我们在viewpager 的任何片段中覆盖onResume() 方法时,我们注意到它实际上只有在viewpager 滚动到该特定片段页面时才会恢复。

那么,如何将viewpager的所有片段一起恢复?

【问题讨论】:

  • 您为什么要这样做?您想要“恢复”不可见的片段似乎很奇怪。
  • 如果我调用 onResume() 方法的片段中有任何更新。然后,当用户仅将 viewpager 滑动到一半时,更新将不可见。只有当用户将查看器完全滑动到该片段时,它才会突然可见。这让事情变得丑陋。我不希望这种情况发生。这就是为什么我想要一次所有片段 onResume() !任何帮助,将不胜感激。提前致谢
  • 你为什么要使用onResume()?每个片段都会调用一个生命周期方法 - onStart()
  • 感谢您提及先生。我试试看!

标签: android android-viewpager fragment


【解决方案1】:

调用 setOffscreenPageLimit 的数字大于片段的一半。这将强制 viewpager 创建并保留您在适配器中创建的所有片段。

viewPager.setOffscreenPageLimit(2);
viewPager.setAdapter(pagerAdapter);

这里我假设 2 作为 viewpager 中的片段总数

【讨论】:

    猜你喜欢
    • 2023-04-07
    • 2016-12-28
    • 1970-01-01
    • 2014-09-11
    • 2012-06-06
    • 2013-12-15
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多