各位新年快樂承二!偶然的機(jī)會榆鼠,我進(jìn)入了另外一種生活。2016年才開始稍微認(rèn)真地更新一下文章亥鸠,幸好一直有幾位朋友的支持妆够。新的一年,新的開始负蚊,新的嘗試神妹,于是有了 Android 進(jìn)階系列。這是我學(xué)習(xí)《Android 開發(fā)藝術(shù)探索》后整理的筆記家妆,我會一邊學(xué)習(xí)一邊記錄鸵荠。
Activity 的生命周期分為正常情況下的生命周期,以及異常情況下的生命周期伤极,兩者略有不同蛹找。上篇是正常情況,下篇是異常情況哨坪。
正常情況下庸疾,Activity 的常用生命周期只有圖中的7個:onCreate、onStart当编、onResume届慈、onRestart、onPause忿偷、onStop金顿、onDestroy。
Activity 啟動后鲤桥,會調(diào)用 onCreate 創(chuàng)建 Activity 揍拆,然后調(diào)用 onStart 來準(zhǔn)備 Activity 的顯示,接著調(diào)用 onResume 把 Activity 顯示在前臺芜壁。這時 Activity 處于運行狀態(tài)礁凡,下面稱其為原 Activity。如果原 Activity 運行中有新的 Activity 啟動慧妄,原 Activity 會調(diào)用 onPause顷牌。onPause 執(zhí)行完后,新 Activity 才會調(diào)用 onResume塞淹。如果用戶按 HOME 鍵返回桌面或者啟動一個新的 Activity窟蓝,再返回原 Activity,就會調(diào)用 onRestart饱普。
onCreate 和 onDestroy 是配對的运挫,分別表示著 Activity 的創(chuàng)建和銷毀状共,只可能有一次調(diào)用。
1.onCreate 表示 Activity 正在被創(chuàng)建谁帕,是 Activity 生命周期第一個回調(diào)方法峡继。
2.onDestroy 表示 Activity 即將被銷毀,是 Activity 生命周期最后一個回調(diào)方法匈挖。onStart 和 onStop 是配對的碾牌,這兩個方法可能會被多次調(diào)用。
1.onStart 表示 Activity 已經(jīng)在后臺準(zhǔn)備好顯示在前臺儡循,但還沒顯示在前臺舶吗。
2.onStop 表示 Activity 即將停止。onResume 和 onPause 是配對的择膝,這兩個方法可能會被多次調(diào)用誓琼。
1.onResume 表示 Activity 已經(jīng)顯示在前臺。
2.onPause 表示 Activity 正在停止肴捉,Activity 為不可見狀態(tài)腹侣,之后會調(diào)用 onStop。注意:onPause 執(zhí)行完后每庆,新 Activity 的 onResume 才會執(zhí)行筐带。onStart 和 onResume 的差異今穿。
onStart 和 onResume 都表示 Activity 已經(jīng)顯示出來缤灵,但 onStart 還沒顯示在前臺,而 onResume 已經(jīng)顯示在前臺蓝晒。onPause 和 onStop 的差異腮出。
onPause 和 onStop 都表示 Activity 停止,但 onPause 在 Activity 進(jìn)入后臺并且并未被銷毀時調(diào)用芝薇,而 onStop 在 Activity 不再呈現(xiàn)給用戶時調(diào)用胚嘲。調(diào)用 onStop 后,Activity 處于掛起狀態(tài)洛二,要么喚醒馋劈,要么銷毀。
筆者水平有限晾嘶,請使勁評論妓雾。