关于Activity生命周期的管理
2014-03-23 20:18
197 查看
分为三个主要循环
onResume和onPause
onStart和onStop
onCreate和onDestroy
还有一个特殊的循环
onSaveInstanceState和onRestoreInstanceState
onResume和onPause是最轻量的,首先要处理暂停和恢复的基本逻辑
然后,onPause里应该释放一些最轻量的资源,并且应该保存最关键的数据
onStart和onStop里应该用于获取和释放一些较重的资源
onCreate自然是负责如何创建 一个全新的Activity
onDestroy用于释放一些长线资源,比如线程和服务
关键是onSaveInstanceState和onRestoreInstanceState
应该用这两个方法来负责Activity的状态保存和重建工作
在Activity没有被杀死的情况下,用户离开和返回,这个对象一直存在于内存中,状态没有任何变化,所以用户看到的东西没有变化
但是有时候用户离开之后,这个对象可能被杀死,再次进入的时候,这个对象需要重新创建,并且恢复到原来的样子,以给用户以错局好像没有被杀死过一样
这两个方法就是用来做这件事的。在onSave里保存你认为恢复时需要的数据,在onRestore里用这些数据对Activity的样子进行恢复。你可以认为onRestore是在onCreate之后发生,也就是onCreate创建了一个纯净的Activity,而通过onRestore,你可以将它恢复到之前的样子
注意一点,widget会在系统默认的该循环中恢复,你不用操心
一般情况下,主要处理好onPause和onResume以及onSave和onRestore这两个循环就好。当然onCreate要处理好如何创建这个Activity
onResume和onPause
onStart和onStop
onCreate和onDestroy
还有一个特殊的循环
onSaveInstanceState和onRestoreInstanceState
onResume和onPause是最轻量的,首先要处理暂停和恢复的基本逻辑
然后,onPause里应该释放一些最轻量的资源,并且应该保存最关键的数据
onStart和onStop里应该用于获取和释放一些较重的资源
onCreate自然是负责如何创建 一个全新的Activity
onDestroy用于释放一些长线资源,比如线程和服务
关键是onSaveInstanceState和onRestoreInstanceState
应该用这两个方法来负责Activity的状态保存和重建工作
在Activity没有被杀死的情况下,用户离开和返回,这个对象一直存在于内存中,状态没有任何变化,所以用户看到的东西没有变化
但是有时候用户离开之后,这个对象可能被杀死,再次进入的时候,这个对象需要重新创建,并且恢复到原来的样子,以给用户以错局好像没有被杀死过一样
这两个方法就是用来做这件事的。在onSave里保存你认为恢复时需要的数据,在onRestore里用这些数据对Activity的样子进行恢复。你可以认为onRestore是在onCreate之后发生,也就是onCreate创建了一个纯净的Activity,而通过onRestore,你可以将它恢复到之前的样子
注意一点,widget会在系统默认的该循环中恢复,你不用操心
一般情况下,主要处理好onPause和onResume以及onSave和onRestore这两个循环就好。当然onCreate要处理好如何创建这个Activity
相关文章推荐
- Android-管理Activity生命周期 -暂停和恢复一个Activity
- 关于Activity的生命周期(开发中常用)
- 【Fragment精深系列6】关于FragmentManager动态管理Fragment时Fragment生命周期的探究
- 关于fragment与activity生命周期相关讨论
- 管理Activity的生命周期
- [安卓基础] 007.管理Activity的生命周期
- 【android】关于FragmentManager动态管理Fragment时Fragment生命周期的探究
- Managing the Activity Lifecycle 管理活动的生命周期
- 关于android的activity的生命周期和回传值的简单介绍
- Android Activity---管理Activity的生命周期
- 关于在一个Activity中启动相机时,生命周期的问题
- 关于Activity生命周期学习之窗口化一个Activity
- MVP项目研究——AppManager融合Dagger2和androidEventbus管理Activity的生命周期
- Activity生命周期管理之一——Starting一个Activity
- 管理Activity的生命周期
- 【转】Android Activity生命周期管理
- 插件化开发---DroidPlugin对Activity启动流程、生命周期的管理
- 管理activity的生命周期
- Android Activity生命周期管理
- Android Activity生命周期和堆栈管理的详解