Android FragmentPagerAdapter VS FragmentStatePagerAdapter

通过源码中的两个方法来对比一下
FragmentPagerAdapter
instantiateItem

destroyItem

FragmentStatePagerAdapter

instantiateItem

destroyItem

总结:

源码解析:
FragmentPagerAdapter中的item都是只有在fragment为空的时候会通过getItem获取新的item,而已经加载过的item会被保存到内存中,在需要获取的时候直接attach,而在destroyItem方法中并没有真正移除掉item,只是detach解除了关联而已。

FragmentStatePagerAdapter 中的item每次都会通过getItem来获取新的item,而在destroyItem方法中是真正的remove掉了item

——————————————————————————————————–
对比用法
FragmentPagerAdapter : 每个生成的fragment都会被保存在内存中,因此适用于fragment相对静态 ,数量较少的页面。

FragmentStatePagerAdapter : 只保留当前页面,当页面离开视线的时候会被删除,释放内存,因此适用于fragment动态性大,数量多的页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值