昆蟲帶你瞭解Android四大組件之————Activity
- Activity是什麼?
- activity:活動,安卓四大組件之一。我們所看到的程序界面都是actvity。
- Activity有什麼作用?
- 用於和用戶進行交互。比如:打電話,拍照等
- Activity的樣式?
- activity是用戶能看到的程序窗口。大可以鋪滿整個手機屏幕,小可以很小(一般不會太小)一般用於提示框,小的activity一般浮動於其他activity上面。
- 程序中的activity是怎麼使用的?
- 程序通常由多個activity組成。應用通常會指定其中一個爲主activity(昆蟲王)。
- 我們怎麼知道以那個爲主activity呢?
- 主activity並不一定是實現最多的功能那個activity(昆蟲王都會安排小弟做事嘛)。而是程序啓動後我們看到的第一個界面。一般用於程序的引導頁。
Activity的生命週期是怎麼樣的呢
- Activity的生命週期(蟲子的生命)
不可見
- onCreate()———————初始化 (蟲子在孃胎中)
- onStart ()———————啓動 (蟲子在孃胎慢慢長大)
- 可見
- onResume()———————可以與用戶交互 (蟲子出生)
- onPause ()———————部分被遮擋 (蟲子被天敵盯上了)
- onStop ()———————完全遮擋 (蟲子與天敵大戰)
- onDestroy()——————銷燬 (蟲子被天敵殺死了)
- onRestart()——————重啓 (蟲子在天敵大戰之前就逃脫了追殺)
- 在不同的生命週期我們應該做哪些操作呢?
方法 | 說明 | 是否能事後終止? | 後接 |
---|---|---|---|
onCreate() | 首次創建 Activity 時調用。 您應該在此方法中執行所有正常的靜態設置 — 創建視圖、將數據綁定到列表等等。 系統向此方法傳遞一個 Bundle 對象,其中包含 Activity 的上一狀態,不過前提是捕獲了該狀態(請參閱後文的保存 Activity 狀態)。 始終後接 onStart()。 |
否 | onStart() |
onRestart() | 在 Activity 已停止並即將再次啓動前調用。 始終後接 onStart() |
否 onStart() | |
onStart() | 在 Activity 即將對用戶可見之前調用。 如果 Activity 轉入前臺,則後接 onResume(),如果 Activity 轉入隱藏狀態,則後接 onStop()。 |
否 | onResume() 或 onStop() |
onResume() | 在 Activity 即將開始與用戶進行交互之前調用。 此時,Activity 處於 Activity 堆棧的頂層,並具有用戶輸入焦點。 始終後接 onPause()。 |
否 | onPause() |
onPause() | 當系統即將開始繼續另一個 Activity 時調用。 此方法通常用於確認對持久性數據的未保存更改、停止動畫以及其他可能消耗 CPU 的內容,諸如此類。 它應該非常迅速地執行所需操作,因爲它返回後,下一個 Activity 才能繼續執行。 如果 Activity 返回前臺,則後接 onResume(),如果 Activity 轉入對用戶不可見狀態,則後接 onStop()。 |
是 | onResume() 或 onStop() |
onStop() | 在 Activity 對用戶不再可見時調用。如果 Activity 被銷燬,或另一個 Activity(一個現有 Activity 或新 Activity)繼續執行並將其覆蓋,就可能發生這種情況。 如果 Activity 恢復與用戶的交互,則後接 onRestart(),如果 Activity 被銷燬,則後接 onDestroy()。 |
是 | onRestart() 或 onDestroy() |
onDestroy() | 在 Activity 被銷燬前調用。這是 Activity 將收到的最後調用。 當 Activity 結束(有人對 Activity 調用了 finish()),或系統爲節省空間而暫時銷燬該 Activity 實例時,可能會調用它。 您可以通過 isFinishing() 方法區分這兩種情形。 | 是 | 無 |