当前位置: 首页 > news >正文

【Android开发坑系列】之Fragment

这个东西有顾名思义是碎片,和之前的Activity对应。

坑1:一般情况都会想当然的以为进程被杀掉之后,Fragment也会被回收

其实,Fragment有自己的生命周期,有自己的管理器(FragmentManager),也即:
包含Fragment的进程被干掉,Fragment不一定会被回收,而是由FragmentManager来决定生死。

Q:如何验证上面的说法?
A:如果是一般正常的流程“打开-关闭”软件,Fragment的确被回收了。但是如果使用“腾讯手机管家”之类的内存清理工具,清理内存(实际上是杀死进程),会发现Fragment没有被回收,一直缓存着。验证方法如下:缓存Fragment的Tag到本地数据库(可以是xml/sqlite等),然后FragmentManager.findFragmentByTag(...)是否为Null来验证Framgent是否被回收了。

有个奇怪的现状是:在上面蓝色的情况发生后,Framgent和包含他的Activity的生命周期顺序都乱套了,原本是:
Activity.onCreate-->Fragment.onCreate-->Fragment.onCreateView
变成:
Fragment.onCreate-->Activity.onCreate-->Fragment.onCreateView
猜测是因为直接用的Frament缓存,其onCreate先于父Activity.onCreate执行了。

坑2:添加Fragment注意事项,阅读:http://www.tuicool.com/articles/qaA7ry

相关文章:

  • WPF中Visible设为Collapse时,VisualTreeHelper.GetChildrenCount为0
  • 这次逻辑通了,
  • PIX8.0双链路***和上互联网流量分开且线路冗余测试
  • ie,你还能再浪一点不
  • C# params参数的应用
  • SSH2实现数据库和界面的分页
  • 总结2
  • 单点登录-利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆(修改)
  • Spring IOC 和 DI 理解
  • SQL Server 2008数据备份与还原(操作篇)
  • jQuery EasyUI学习资料汇总
  • lync 2010 批量启用用户
  • mysqldump学习
  • Silverlight 结合ArcGis 在地图画点
  • 摇摆的立场
  • 时间复杂度分析经典问题——最大子序列和
  • 收藏网友的 源程序下载网
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • EventListener原理
  • Git同步原始仓库到Fork仓库中
  • HTML5新特性总结
  • Laravel 实践之路: 数据库迁移与数据填充
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • react 代码优化(一) ——事件处理
  • SpiderData 2019年2月25日 DApp数据排行榜
  • 包装类对象
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 免费小说阅读小程序
  • 前端 CSS : 5# 纯 CSS 实现24小时超市
  • 云大使推广中的常见热门问题
  • 第二十章:异步和文件I/O.(二十三)
  • ​configparser --- 配置文件解析器​
  • ###C语言程序设计-----C语言学习(6)#
  • #define
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (2)nginx 安装、启停
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (7)STL算法之交换赋值
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (Redis使用系列) SpringBoot 中对应2.0.x版本的Redis配置 一
  • (WSI分类)WSI分类文献小综述 2024
  • (附源码)apringboot计算机专业大学生就业指南 毕业设计061355
  • (论文阅读30/100)Convolutional Pose Machines
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (一)SpringBoot3---尚硅谷总结
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET连接数据库方式
  • @html.ActionLink的几种参数格式
  • [ 第一章] JavaScript 简史
  • [BUUCTF]-PWN:wustctf2020_number_game解析(补码,整数漏洞)