防止ViewPager中的Fragment被销毁的方法
2019独角兽企业重金招聘Python工程师标准>>>
在使用ViewPager与Fragment的时候,ViewPager会自动缓存1页内的数据,如下图:
当我们当前处在页面2的时候,页面1和页面3的View实际上已经创建好了,所以在我们拖动的时候是可以看见他们的界面的。
但是当我们的页面处在1的时候,页面3实际上就已经销毁了。直到跳转到页面2的时候,页面3才会创建View。
这时,如果页面3中有需要耗时的事件,比如网络访问。那么,在我们进行 1-->2 的操作的时候,就会不断的出现页面3加载的对话框(如果有的话)。而且如果快速的 1-->2-->3的切换,3中的内容很可能还没加载出来。
这样重复的加载,既影响体验、又耗费时间和流量,所以笔者这两天一直在查如何在Fragment移出的时候不要销毁,或者保存状态。
后来发现真是多此一举,如果您的软件对内存消耗不是很在意的话,只需加入以下代码:
![](http://static.oschina.net/uploads/img/201506/25152829_1xNO.png)
![](http://static.oschina.net/uploads/img/201506/25152829_RBPQ.jpg)
- pager.setOffscreenPageLimit(2);
就可以让ViewPager多缓存一个页面,这样上面的问题就得到了解决。
当然这只是个取巧的方法,如果有比较好的保存状态的方法会更好。
转载请注明来自:http://blog.csdn.net/icyfox_bupt/article/details/18356461
转载于:https://my.oschina.net/sfshine/blog/470729
防止ViewPager中的Fragment被销毁的方法相关推荐
- 友盟页面统计 - 关于Viewpager中的Fragment的生命周期
Activity和Fragment各自理论上的生命周期 Activity的生命周期是较为经典也最清晰的,在此不表: Fragment从出现到广泛运用也有一段时间了,其标准生命周期也仅比Activity ...
- ViewPager中Fragment的重复创建、复用问题
在ViewPager中的Fragment的生命周期 随着页面的切换 当前的展示页相邻的页面生命周期一直在变化 一开始 刚进入Activity时候,ViewPager默认初始化好前两个Fragment ...
- android tab pageview,Android Fragment在ViewPager中到底经历了什么?
2017年05月30 最后的懒加载写的不好,推荐请叫我大苏同学写的Fragment懒加载博客, [Android]再来一篇Fragment的懒加载(只加载一次哦) 在大苏同学的博客评论里,看到了另一个 ...
- android listview动态添加viewpager,向 ViewPager 中添加 包含 ListView 的 Fragment
对与fragment就不说什么了,直接看API手册吧,亲. 向 ViewPager 中添加 包含 ListView 的 Fragment 的过程比较麻烦.他所表现的效果就是新闻客户端的滑动翻页效果. ...
- android viewpager fragment 生命周期,ViewPager中Fragment的生命周期
网上有很多Fragment生命周期的帖子,但是看了一下,没有找到自己想了解的东西,于是决定自己动手体验一下这个生命周期.主要想了解以下几个问题: Activity中的Fragment的生命周期 Vie ...
- Fragment在ViewPager中的生命周期
转载自 hdszlk的博客 原文链接:https://www.2cto.com/kf/201607/530540.html 1.一直以来的疑问 Fragment在ViewPager到底经历了哪 ...
- Android清空Fragment缓存,清空Fragment来退栈中某个Fragment
清空Fragment回退栈中某个Fragment 出栈的方法: getActivity().getSupportFragmentManager().popBackStackImmediate(Crea ...
- app包中的fragment和v4包中的fragment的使用的区别
转自 http://blog.csdn.net/a465456465/article/details/10415211 app包中的fragment和v4包中的fragment的使用的区别 1.尽量不 ...
- viewpager初始化fragment没有绘制_Fragment在ViewPager中的正确应用(3)FragmentStatePagerAdapter优化了什么...
前言 Fragment在ViewPager中的正确应用(2)内存泄漏?内存溢出 错误终结者:Fragment在ViewPager中的正确应用 OK,填坑篇的文章来了. 当我打开官方文档准备开始了解Fr ...
最新文章
- 分享一下我的初中生活
- PackageManagerService详解
- JAVA写的爬虫小工具
- settimeout需要清除吗_钢结构抛丸机可以清理结构件上的焊渣吗?
- c-nominated = ((rcheck-use_candidate) || c-nominated);
- 用Python处理图片九宫格
- JAVA生产环境验证_Java生产环境下性能监控与调优详解
- linux 内核地址随机化,GNU/Linux内核的地址随机化
- Spring 整合 Quartz 分布式调度
- python3环境运行python2代码_使用Anaconda实现Python2和Python3共存及相互转换
- ElasticSearch破解x-pack 6.0+和更新许可证(License)
- navigation笔记
- Django模型(model)系统
- 一文理解 Windows 身份验证原理
- modbus寄存器、功能码、报文结构解析
- 油猴安装、编写及添加脚本 笔记
- python数据分析前景如何_数据分析师的前景怎么样?
- [PHP]用PHP自己写一个zoomeye的api(偷懒必备quq)
- 2万字系统总结,带你实现 Linux 命令自由?
- 夕颜的python笔记003
热门文章
- c程序设计语言1-10答案,C语言程序设计试卷及答案_1(10页)-原创力文档
- barco控制软件支持linux_vnc远程控制软件linux,在linux系统上能够使用的vnc远程控制软件...
- db2 查看表结构_数据库结构文档的生成利器
- san分布式共享文件系统_【最强科普】一文读懂分布式存储
- 了解FPS屏幕刷新率
- hibernate mysql longblob_为什么不能将JPA / hibernate映射到MySQL blob类型?
- 香港科技大学计算机专业国内就业6,香港科技大学就业好吗?
- 20211010 PHP笔记
- NodeJs局域网开启服务
- Javascript插入排序