FragmentpagerAdapter和FragmentStatePagerAdapter的区别

Posted 和平world

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FragmentpagerAdapter和FragmentStatePagerAdapter的区别相关的知识,希望对你有一定的参考价值。

在工作中,需要用到fragment的时候,需要继承adapter,AS默认给我们提示的是FragmentPagerAdapter但是当fragment数量比较少的时候用这个适配器还可以。当适配器多的时候,在用这个适配器会遇到一些莫名奇妙的问题,就是不能刷新数据啊,数据不能及时更新之类的。

所以就需要继承FragmentStatePagerStateAdapter,这样就不会出现界面卡顿啊,数据出错等情况。

安卓开发者博客是这样说的

<span style="font-size:18px;"> If you have a larger number of Fragments, the FragmentStatePagerAdapter is worth considering as it will remove them, with the downside being they need to be rebuilt as the user swipes back to them. So, if you have fewer, more complex fragments the FragmentPagerAdapter makes sense, but consider FragmentStatePagerAdapter for larger sets.</span>

谷歌翻译:

<span style="font-size:18px;">如果你碎片的数量较多,该FragmentStatePagerAdapter是值得考虑的,因为它会删除他们,与缺点是,他们需要为用户挥笔还给他们重建。所以,如果你有更少,更复杂的片段FragmentPagerAdapter是有道理的,但考虑到FragmentStatePagerAdapter较大的集。</span>

所以以后开发当遇到2-3个fragment的第一个时候,我们就用第一个 ,当遇到fragment比较多的时候我们就用第二个adapter。

以上是关于FragmentpagerAdapter和FragmentStatePagerAdapter的区别的主要内容,如果未能解决你的问题,请参考以下文章

FragmentStatePagerAdapter和FragmentPagerAdapter区别

重用 ViewPager 和 FragmentPagerAdapter 的片段

FragmentPagerAdapter和FragmentStatePagerAdapter区别?

如何刷新 FragmentPagerAdapter 的片段?

FragmentpagerAdapter和FragmentStatePagerAdapter的区别

使用 ViewPager + FragmentPagerAdapter 处理方向更改