我目前有很多逻辑,这些逻辑对于展示我的个人片段是必不可少的。渲染每个单独的片段可能需要300毫秒。 ViewPager当前加载在屏幕上可见的片段以及两个相邻片段,然后在UI中呈现任何内容。 我希望它首先呈现对用户可见的片段,并仅在用户得到他的片段后才对其他片段进行处理。有没有办法得到我想要的行为?
答案 0 :(得分:0)
在您的FragmentStatePagerAdapter
课堂上尝试
override fun getItemPosition(`object`: Any): Int {
PagerAdapter.POSITION_NONE
}
答案 1 :(得分:0)
除非您在其他片段中做一些繁重的工作,否则我不认为您会在这里看到大的性能提升。但是,无论您加载的第一个片段是什么,您都可以在完成加载后随时调整允许的屏幕外显示。
mViewPager.setOffscreenPageLimit(0)
然后,在完成加载后,调整为要在内存中保留多少以便更好地滚动用户。
mViewPager.setOffscreenPageLimit(2)
那应该可以完成您要求的行为。