【问题标题】:Viewpager not clearing fragmentsViewpager 不清除片段
【发布时间】:2021-10-31 04:33:05
【问题描述】:

我在使用嵌套查看器时遇到了这个问题。

我有两个级别的浏览器。我们称它为 levelOneViewPager,其中我还有一个 viewpager,我们称它为 levelTwoViewPager。

Activity为levelOneViewPager加载数据并设置适配器。

levelOneViewPager 在 onViewCreated 中为 levelTwoViewPager 加载数据并设置适配器。

levelOneViewPager 首次加载数据时一切正常。

现在问题来了。 levelOneViewPager 的第一页已加载,我移至第 4 页并返回第一页,应用程序崩溃。 原因,现在 levelOneViewPager 的第一页被重新创建并正在加载数据,甚至在它设置适配器之前,levelTwoViewPager 的片段已创建并正在访问父片段中的一些数据,这些数据尚不可用。

这是怎么回事?我尚未将适配器设置为 levelTwoViewPager,但已为其创建了片段。

(我尝试同时使用 FragmentPagerAdapter 和 FragmentStatePagerAdapter,这是相同的行为)

【问题讨论】:

    标签: android android-fragments android-viewpager


    【解决方案1】:

    为父viewpager添加offscreenpage限制,这应该可以解决问题

    【讨论】:

    • 这将如何解决问题?这没有意义。反正我试过了,还是一样。
    • 如果您将 ser 限制为零,它将每次都重新创建父片段,这意味着子片段也将被再次创建
    • 你不能将 offscreenpagelimit 设置为 0,默认情况下它总是 1。任何低于 1 的东西你都尝试设置它丢弃。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-16
    • 2016-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多