正常來說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生命週期得另外考慮
下次測試一下再更新