FragmentStatePagerAdapter和FragmentPagerAdapter区别

FragmentStatePagerAdapter和FragmentPagerAdapter用法基本一致,唯一的区别在于卸载不再需要的Fragment时,各自采用的处理方法不同。
FragmentStatePagerAdapter会销毁不再需要的Fragment。事务提交后,activity的FragmentManager中的fragment会被彻底移除。FragmentStatePagerAdapter类中的“state”表明:在销毁Fragment时,可在onSaveInstanceState(Bundle)方法中保存Fragment的Bundle信息。用户切换回来时,保存的实力状态可用来生成新的Fragment。
相比之下,FragmentPagerAdapter对于不再需要的Fragment,会调用事务的detach(Fragment)方法来处理,而不是remove(Fragment)方法。换句话说就是FragmentPagerAdapter只是销毁了Fragment的视图,当这个Fragment实例还保留在FragmentManager中。因此,FragmentPagerAdapter创建的Fragment永远不会被销毁。

说道具体的用途,使用FragmentStatePagerAdapter更加节省内存,所以适合显示大量的数据。而FragmentPagerAdapter则更加适合显示少量固定的Fragment,比如一般App常用的Tab页。通常只有固定数量的tab页3~5页,所以也不用担心内存不足的问题。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在使用ViewPager常用设置1)mViewPager.setOffscreenPageLimit(2);//设...
    kangqiao182阅读 12,312评论 2 12
  • 《Android Fragment完全解析,关于碎片你所需知道的一切》 我们都知道,Android上的界面展示都是...
    cxm11阅读 6,660评论 2 19
  • 我总是喜欢自己看东西,原来这个习惯就不好,输入多,输出少。所以,还是把自己研究的写问题记录总结一下,也可以给大家分...
    飘雨cc阅读 3,126评论 1 0
  • 1.有道云笔记 1)有道云笔记及使用缘由简介 手机APP:有道云笔记。有手机应用版本,也有网页版本可以在PC端浏览...
    进士及第阅读 5,439评论 0 11
  • 3.鲁周公世家 周公 周公姬旦,为人孝顺,仁慈敦厚,是周武王的弟弟。 周公辅佐武王,推翻商纣,建立周朝,被封为鲁公...
    面包马戏团阅读 4,804评论 0 5

友情链接更多精彩内容