1. 程式人生 > >Android之Activity的三種狀態陳述

Android之Activity的三種狀態陳述

Activity存在三種狀態

①Resumed重新啟動

activity回到螢幕的前面或者又獲得使用者的焦點,處於這種狀態的窗體使用者可以操作。

②Paused暫停

什麼時候會出現暫停?當另外一個activity在前面或者得到焦點的時候,當前的activity就會處於暫停狀態。比如,當我們在玩遊戲的時候,突然來了一個電話,此時遊戲可能就是透明的顯示著(附加在窗體之中),再比如,當我們聽音樂的時候來了個電話,當我接電話的時候,此時音樂會暫停(打的時間短),如果電話打的時間長了,此時音樂就不能再播放了(記憶體耗費太多,此時音樂會被系統殺掉)。其他的activity獲得了焦點,但是當前的activity仍然是可見的,其他的activity會位於當前的activity的上面,也即是在棧頂。被暫停的activity還是活著的,可以附加在窗體之中,如果電話結束通話還是可以播放的。暫停的狀態不能儲存資料。記憶體極其低的時候會回收activity的記憶體。

③Stopped停止

當前 的activity完全被另外一個activity遮蓋著了,被遮蓋的activity就處於後臺,被停止的activity還是活著的。處於停止的activity還是在記憶體中保持著,但是不會附加在窗體之中。假如打電話把音樂給停止了,這種狀態的activity就回不來了,使用者不能再用了。系統需要的時候就會回收activity的記憶體。

如果一個Activity處於暫停或者停止狀態的時候,系統會把它從記憶體中取出來,並且呼叫finish方法,把它finish掉(系統或者程式設計師)。