gpt4 book ai didi

android - 调用 setAdapter 时 ViewPager 并不总是刷新,FragmentStatePagerAdapter

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:08:38 24 4
gpt4 key购买 nike

首先,我使用 FragmentStatePagerAdapter 为 ViewPager 提供要显示的 fragment 。

当应用程序处于运行状态时(即在 onResume() 之后),调用 ViewPager 上的 setAdapter 将始终有效并使我的 ViewPager 刷新,getItem(int position) 方法。

但是在方向改变后,如果我在 Activity 的 onCreate(Bundle savedInstance) 方法中调用 setAdapter,则不会调用 getItem(int position) 方法,旧 fragment 被重用。

我在想,也许 FragmentManager 正在做一些我不明白的事情? fragment 管理器是唯一在方向更改期间不会被破坏的东西。

谢谢

最佳答案

这可能是因为您在使用嵌套 fragment 时使用 getFragmentManager() 来实例化 FragmentStatePagerAdapter。

尝试使用 getChildFragmentManager() 代替:

CustomFragmentPagerAdapter fragmentPagerAdapter = new CustomFragmentPagerAdapter(getChildFragmentManager());

已找到答案 here .

关于android - 调用 setAdapter 时 ViewPager 并不总是刷新,FragmentStatePagerAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13557153/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com