- Android Activity生命周期中可認(rèn)為分為7個階段锰悼;用7個函數(shù)原型來描述吧
protected void onCreate(Bundle savedInstanceState)
protected void onStart()
protected void onResume()
protected void onPause()
protected void onStop()
protected void onRestart()
protected void onDestroy()
- activity主要生命周期的方法說明:
onCreate(Bundle savedInstanceState):創(chuàng)建activity時調(diào)用玄柠。設(shè)置在該方法中边篮,還以Bundle的形式提供對以前儲存的任何狀態(tài)的訪問溶推!
onStart():activity變?yōu)樵谄聊簧蠈τ脩艨梢姇r調(diào)用。
onResume():activity開始與用戶交互時調(diào)用(無論是啟動還是重新啟動一個活動,該方法總是被調(diào)用的)窃蹋。
onPause():activity被暫停或收回cpu和其他資源時調(diào)用静稻,該方法用于保存活動狀態(tài)的警没,也是保護(hù)現(xiàn)場,壓棧吧振湾!
onStop():activity被停止并轉(zhuǎn)為不可見階段及后續(xù)的生命周期事件時調(diào)用杀迹。
onRestart():重新啟動activity時調(diào)用。該活動仍在棧中押搪,而不是啟動新的活動树酪。
onDestroy():activity被完全從系統(tǒng)內(nèi)存中移除時調(diào)用,該方法被調(diào)用可能是因為有人直接調(diào)用onFinish()方法或者系統(tǒng)決定停止該活動以釋放資源大州!
Paste_Image.png
public class MyActivity extends Activity {
// 在Activity生命周期開始時被調(diào)用
public void onCreate(Bundle icicle) {
}
// onCreate完成后被調(diào)用续语,用來回復(fù)UI狀態(tài)
public void onRestoreInstanceState(Bundle savedInstanceState) {
}
//當(dāng)activity從停止?fàn)顟B(tài)重新啟動時調(diào)用
public void onRestart(){
}
//當(dāng)activity對用戶即將可見的時候調(diào)用。
public void onStart(){
}
//當(dāng)activity將要與用戶交互時調(diào)用此方法厦画,此時activity在activity棧的棧頂绵载,用戶輸入已經(jīng)可以傳遞給它
public void onResume(){
}
// Activity即將移出棧頂保留UI狀態(tài)時調(diào)用此方法
public void onSaveInstanceState(Bundle savedInstanceState) {
}
//當(dāng)系統(tǒng)要啟動一個其他的 activity時調(diào)用(其他的activity顯示之前),這個方法被用來提交那些持久數(shù)據(jù)的改變、停止動畫娃豹、和其他占用 CPU資源的東西焚虱。由于下一個activity在這個方法返回之前不會resumed,所以實現(xiàn)這個方法時代碼執(zhí)行要盡可能快懂版。
public void onPause(){
}
//當(dāng)另外一個activity恢復(fù)并遮蓋住此activity,導(dǎo)致其對用戶不再可見時調(diào)用鹃栽。一個新activity啟動、其它activity被切換至前景躯畴、當(dāng)前activity被銷毀時都會發(fā)生這種場景民鼓。
public void onStop(){
}
//在activity被銷毀前所調(diào)用的最后一個方法,當(dāng)進(jìn)程終止時會出現(xiàn)這種情況
public void onDestroy(){
}
Paste_Image.png