博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fragment碎片的生命周期
阅读量:4290 次
发布时间:2019-05-27

本文共 968 字,大约阅读时间需要 3 分钟。

一、碎片的生命周期

1、碎片和活动一样,也有四种状态,分别是:运行状态、暂停状态、停止状态和销毁状态。

2、活动有的回调方法,碎片中除了没有onRestart()的,其他的都有,除此之外,碎片还有一些回调方法,如下:

(1)、onAttach():当碎片和活动建立关联的时候调用。

(2)、onCreateView():为碎片创建视图(即加载布局)时调用。

(3)、onActivityCreated():确保与碎片想关联的活动已经创建的时候调用。

(4)、onDestroyView():当与碎片关联的视图移除的时候调用。

(5)、onDetach():当碎片与活动解除关联的时候调用。

3、碎片完整的生命周期,如图:

4、当停止状态的碎片,由于系统内存不足被回收时,我们可以通过onSaveInstanceState()方法来保存数据,保存下来的数据在onCreate(),onCreateView()和onActivityCreated(),这三方法中都可以重新得到,他们都含有一个Bundle类型的savedInstanceState参数,这个参数在一般情况下是null,但是当活动被系统回收之前如果通过onSaveInstanceState()方法保存了数据的话,这个参数就会带有之前所保存的全部数据,如下:

@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		if (savedInstanceState != null) {			String tempData = savedInstanceState.getString("key");		}	}	@Override	protected void onSaveInstanceState(Bundle outState) {		super.onSaveInstanceState(outState);		String tempData = "要保存的数据";		outState.putString("key", tempData);	}

你可能感兴趣的文章
《程序员》:携程移动端 UI 界面性能优化实践
查看>>
Android指纹识别深入浅出分析到实战
查看>>
你们要的多数据库功能终于来了
查看>>
Android中实现微信本地视频发布到朋友圈功能
查看>>
非替代品,MongoDB与MySQL对比分析
查看>>
Hadoop平台相关技术
查看>>
java学习11天-自定义异常&异常转换(实例应用)
查看>>
MySql、SqlServer、Oracle数据库行转列大全
查看>>
程序员常用的自助建站资源汇总!
查看>>
分布式与集群的区别是什么?
查看>>
MySql常用必备脚本大全
查看>>
Velocity初探小结--velocity使用语法详解
查看>>
设计模式学习 - Singleton Pattern
查看>>
学习Spring——依赖注入
查看>>
CSS3 transform 属性详解
查看>>
Java对象内存结构及大小计算
查看>>
Spring MVC注解的一些案列
查看>>
Web大文件断点续传,快来看看吧!
查看>>
javascript高级编程3第二章:在html中使用javascript
查看>>
Android中热修复框架AndFix原理解析及案例使用
查看>>