Activity的生命週期

2021-08-17 03:41:11 字數 1008 閱讀 3427

完整的生命週期  從啟動到消亡    oncreate()  - onstart() - onresume() - onpause() - onstop() - ondestory()

你的activity應該在 oncreate() 方法裡完成所有「全域性global」狀態的設定(比如定義layout),而在ondestroy() 方法裡釋放所有占用的資源。

activity的可見生存期會在 onstart() 呼叫和 onstop() 呼叫之間發生。在這期間,使用者可在螢幕上看見這個activity並可與之互動。

例如,當乙個新的activity啟動後呼叫了 onstop() 方法,則這個activity就無法被看見了。在這兩個方法之間,你可以管理那些顯示activity所需的資源。

例如,你可以在 onstart() 方法裡註冊乙個 broadcastreceiver 用於監控影響使用者介面的改動。並且當使用者不再看到你的顯示內容時,在 onstop() 方法裡登出掉它。系統會在activity的整個生存期內多次呼叫 onstart() 和onstop(),因為activity可能會在顯示和隱藏之間不斷地來回切換。

activity的前台生存期會在 onresume() 呼叫和 onpause() 之間發生。在這期間,activity是位於螢幕上所有其它的activity之前,並且擁有使用者的輸入焦點。activity可以頻繁地進入和退出前台——例如, 當裝置進入休眠時或者彈出乙個對話方塊時,onpause() 就會被呼叫。因為這個狀態可能會經常發生轉換,為了避免切換遲緩引起的使用者等待,這兩個方法中的**應該相當地輕量化。 

當activity顯示  oncreate() -  onstart() - onresume() 

當activity進入後台   onpause() - onstop() 

當從後台進入前台 onrestart() - onstart()  - onresume() 

當a被b覆蓋時候 a onpause()  -  b oncreate() - b onstart() - b onresume() - a onstop()

Activity生命週期

oncreate 設定activity所使用的布局檔案 按鈕繫結 等靜態設定操作 onstart 該activity能被我們看到的時候就會呼叫onstart onresume 能夠獲得使用者焦點 onpause 啟動另外乙個activity的時候就會呼叫第乙個activity的該方法 onstop ...

activity生命週期

乙個activity的啟動順序 oncreate onstart onresume 當另乙個activity啟動時 第乙個activity onpause 第二個activity oncreate onstart onresume 第乙個activity onstop 當返回到第乙個activity...

Activity 生命週期

activities 在系統中是以 activity 棧的形式被管理的。當乙個新的 activity 啟動時,它將會被放到棧的頂部並變成 running activity 上乙個activity 會被至於它的下面,在新 activity 存在期間它都不會到前端來。乙個 activity 有四個重要的...