Activity的生命週期

2021-05-26 05:00:33 字數 913 閱讀 4649

看乙個圖先:

這是官網的activity生命週期結構圖,從這個圖中可以看出activity的生命週期函式挺多的,其實他的生命週期和以往我們看到的其他元件的生命週期一樣,都是從建立到銷毀的過程,只不過之間多加了幾個生命週期函式,將他的生命週期細化了。

首先看到的事oncreate()函式,顧名思義這個函式在activity開始建立時呼叫,可以在其中定義一些初始化操作。接下來是onstart()方法,這個方法在activity開始被執行時呼叫,它緊隨oncreate()方法之後呼叫,接著是onresume()方法,這個方法對我們來說算是比較陌生的,這個方法是在該activity或得使用者輸入焦點時被呼叫,這個或得使用者輸入焦點有點不好理解,如果我們用過android手機或者其他系統的手機時,經常會看到有些視窗雖然能看到但無法對他進行操作,這時的activity就沒有或得使用者焦點。當這個方法呼叫後activity開始真正的執行了,在activity正在執行時使用者啟用了另乙個activity,這時將呼叫第乙個activity的onpause()方法,可以理解為第乙個activity被暫停了,這個時候如果系統的記憶體不夠用(手機記憶體不夠用的情況經常發生),第乙個activity的程序可能被殺死(何時被殺死是由系統決定的,不需要我們參入),當下次我們再執行第乙個activity時就需要重新建立這個activity,那就又需要呼叫oncreate()方法。如果在這個activity沒有被殺死的情況下,我們重新呼叫第乙個activity,就會直接呼叫它的onresume()方法後開始執行。如果第乙個activity很久都沒有得到再次執行機會,就會呼叫onstop()被停止,這時如果activity又或得使用者輸入焦點,就會呼叫onrestart()方法,重新開始執行這個activity,或者被系統殺死,否則呼叫ondestroy()方法銷毀activity。這整個過程看起來有點繞,其實在實際開發中我們很少會用到所有的生命週期函式,但我們要弄清它的原理,在使用時知道所以然就行了。

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 有四個重要的...