平常使用的FragmentPagerAdapter和FragmentStatePagerAdapter来自android.support.v4.app包用来构建ViewPager。
FragmentPagerAdapter更多的用于少量界面的ViewPager,比如Tab。划过的fragment会保存在内存中,尽管已经划过。
而FragmentStatePagerAdapter和ListView有点类似,会保存当前界面,以及下一个界面和上一个界面(如果有),最多保存3
个,其他会被销毁掉。
要
注意的是FragmentStatePagerAdapter可能不经意间会造成内存未正常回收,严重导致内存溢出,比如图片资源没有释放,资源引用问
题。(之前碰到过EditTextt由于保存焦点导致Fragment未被释放,以至于内存溢出,设置
editText.saveEanble(false)就可以解决此问题)。
相关文章
- mysql8与mysql5.7差异,导致timestamp时间戳设置默认值无效
- Docker Swarm 容器与普通 Docker 容器的网卡差异
- 关于手机取证中逻辑采集与系统备份的差异
- 150文章解读与程序——SCI《考虑充电需求差异性的电动汽车协同充放电调度方法》已提供下载资源
- 使用doris过程中总结的与mysql中语法差异
- More Effective C++----(12)理解"抛出一个异常"与"传递一个参数"或"调用一个虚函数"间的差异
- Vue(二):2.0与3.0的差异、、引入全局样式、router重定向、elementui依赖、git命令提交文件
- MySQL 5.7 与 MySQL 8.0:关键差异与升级考量
- 一文读懂 GPT 与 BERT:预训练逻辑及差异剖析-四、GPT 与 BERT 的区别对比
- 深度解析:JavaScript变量声明的演变与核心差异(var/let/隐式声明)