【问题标题】:Fragment of viewpager refreshes but not supposed toviewpager 的片段刷新但不应该
【发布时间】:2016-01-27 23:14:58
【问题描述】:

我有一个带有 4 个片段的 viewpager。 当我在第 4 个片段上并且我在第 3 个片段上通过滑动返回时,物理上它显示第 3 个但第 2 个刷新导致 NullPointerException,因为我不在那个片段上。

当我对从第 3 次到第 2 次以及从第 2 次到第 1 次执行完全相同的操作时,它会完美运行。

以前有人遇到过这样的问题吗?

【问题讨论】:

    标签: android android-fragments navigation android-viewpager


    【解决方案1】:

    当使用ViewPager 时,默认情况下会加载当前项之前和之后的一项。您可以使用setOffscreenPageLimit (int limit) 更改此行为

    【讨论】:

    • 感谢您的回答。既然已经创建了片段,为什么我刚回来时它们会刷新?
    • @HubertSolecki 我不是 100% 确定 Android 如何处理这个问题,我的猜测可能是当你滚动太远时碎片会被解构以节省内存?当您向后滑动时,您是否检查过onCreate 是否被调用?这可能是一种解释。
    • 取决于您为 viewpager 使用的适配器。 FragmentPagerAdapter 将所有内容保存在内存中,而 FragmentStatePagerAdapter 则没有。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-29
    • 2016-05-19
    • 1970-01-01
    相关资源
    最近更新 更多