ViewPager2 中的片段在第二次查看时为空白

Fragment in ViewPager2 blank upon second viewing

目前,我使用 ViewPager2 实例

实现了以下适配器

在初始加载时 FeedFragment 加载其数据并且可见且正常。当我滚动到第三个左右的片段并返回时,FeedFragment 是空白的,直到我触摸它然后它重新出现。是什么导致了这种空白状态?

    FragmentStateAdapter(fragmentManager, lifecycle) {

    override fun getItemCount(): Int = 5

    override fun createFragment(position: Int): Fragment {
        // Return a NEW fragment instance in createFragment(int)
        return when (position) {
            0 -> FeedFragment()
            else -> Fragment()
        }
    }
}

也许这会有所帮助。

private var feedFragment: FeedFragment? = null
private var someOtherFragment: SomeOtherFragment? = null

override fun createFragment(position: Int): Fragment {
    when (position){
        0 -> {
            if (feedFragment == null) {
                 feedFragment = FeedFramgment.getInstance()
            }
            return feedFragment
        }
        1 -> {
            if (someOtherFragment == null) {
                 someOtherFragment = SomeOtherFragment.getInstance()
            }
            return someOtherFragment
        }
        else -> {
            return Fragment()
        }
    }
    
}