正常来说Activity的生命周期是这样的
如果有重写 onSaveInstanceState(Bundle outState) 来保存重要参数
,比如有重新赋值的成员变量,那么
onSaveInstanceState() 方法在 onPause() 之后 onStop() 之前;
然后 onStop() 执行之后进入别的Activity;
其他界面如果有返回数据会先 onActivityResult() 然后就是正常的:
onRestart() __ onStart() __ onResume()
不过在 开发中模式 开启 不保留活动 来模拟可能出现 内存不足 的情况;
依然是:
onSaveInstanceState() 方法在 onPause() 之后 onStop() 之前;
进入别的Activity之后 onDestroy()销毁界面;
后退时重新进入 onCreate()方法 onStart() onRestoreInstanceState() onResume();
这时如果需要获取保存的数据可以在 onCreate(Bundle savedInstanceState) 马上获取处理
也可以等 onRestoreInstanceState(Bundle savedInstanceState)再获取,只是
onRestoreInstanceState()方法在 onStart()之后 onResume()之前;
具体看情况区分.
如果页面有返回数据则
onActivityResult() 在 onRestoreInstanceState()之后 onResume()之前;
这个和正常的返回是不一样的,得注意
以上这些只是关于Activity生命周期的一些补充,Fragment生命周期得另外考虑
下次测试一下再更新
原文地址:http://qq445493481.blog.51cto.com/9545543/1827296