项目开发用到了Fragment,本来打算用ActivityGroup,看下了下API文档,还是用Fragment吧。
Fragment是3.0之后推出的,用来替代ActivityGroup的,使用这个之前先要把它的生命周期搞清楚。Fragment是绑定在其所属Activity中,所以其生命周期肯定跟Activity相关。做了个程序测试了下。笔记记录如下:
第一种情况,Activity启动,进入Fragment视图。
执行步骤:
1、Activity onCreate
2、Fragment onAttach
3、Fragment onCreate
4、Fragment onCreateView
5、Fragment onActivityCreated
6、Fragment onStart
7、Activity onStart
8、Activity onResume
9、Fragment onResume
第二种情况,Fragment 被别的Fragment替代。
执行步骤:
1、Fragment onPause
2、Fragment onStop
3、Fragment onDestroyView
4、Fragment onDestroy
5、Fragment onDettach
第三种情况,Fragment被重新替换而显示
执行步骤:
1、Fragment onCreate
2、Fragment onCreateView
3、Fragment onActivityCreated
4、Fragment onStart
5、Fragment onResume
第四种情况,点击Home键
执行步骤:
1、Fragment onPause
2、Activity onPause
3、Fragment onStop
4、Activity onStop
第五种情况,Home点击之后,重新进入应用程序
执行步骤:
1、Activity onRestart
2、Fragment onStart
3、Activity onStart
4、Activity onResume
5、Fragment onResume
第六种情况,Back键退出Activity
执行步骤:
1、Fragment onPause
2、Activity onPause
3、Fragment onStop
4、Activity onStop
5、Fragment onDestroyView
6、Fragment onDestroy
7、Fragment onDettach
8、Activity onDestroy
还有什么问题,欢迎大家讨论。
本文详细解析了Fragment的生命周期,并通过实例演示了不同场景下的执行流程。从Activity启动到关闭,全面覆盖Fragment的关键阶段。
1993

被折叠的 条评论
为什么被折叠?



