android activity的生命週期

來源:互聯網
上載者:User

標籤:

android的activity的生命週期有7個方法,分別是onCreate(),onStart(),onRestart(),onResume(),onPause(),onStop(),onDestory()。

有三個迴圈:1.完整的迴圈:從onCreate()一直運行到onDestory()結束。onCreate()—>onStart()—>onResume()—>onPause()—>onStop()—>onDestory()。一路運行到頭

                 2.可見的迴圈:從onStart()運行到onStop()結束。onStart()—>onResume()—>onPause()—>onStop()—>onRestart()—>onStart()。開啟新的activity並且完全覆蓋老的activity後,通過後退鍵重新顯示老的activity

                 3.可互動的迴圈:從onResume()運行到onPause()結束。onResume()—>onPause()—>onResume()。開啟新的activity不完全覆蓋老的activity,通過後退鍵重新顯示老的activity

onCreate():一般在其中進行資料的初始化。

onStart():當調用這個方法時,activity已經可被使用者看到,但不一定在最前台。

onResume():當調用這個方法時,activity處於最前台,能與使用者進行互動。

onPause():當調用這個方法時,activity處於暫停狀態,也就是部分可見。只要有一個新的activity被建立,就一定調用onPause()方法。需要持久保留的資料儲存在onPause()方法中

onStop():當調用這個方法時,activity處於停止狀態,也就是完全不可見。只要當前的activity完全不可見了,就一定調用onStop()方法。

onDestory():當調用到這個方法是,整個程式都關閉了。

onRestart():這個方法只有在老的activity已經完全不可見時,通過後退鍵又顯示出來時調用。

這些都是在系統記憶體充足時的調用

橫豎屏切換:執行onPause(),onStop(),onDestory(),然後執行onCreate(),onStart(),onRestart(),onResume()。銷毀當前的activity,重新建立一個新的activity,橫豎屏的切換都是這個流程。

activity之間的切換順序:Aactivity切換到Bactivity,先執行Aactivity的onPause(),然後執行Bactivity的onCreate(),onStart(),onResume(),最後執行Aactivity的onStop()。Aactivity中比較消耗資源的部分關閉後,再切換到Bactivity中執行onCreate()方法,進行資料初始化,顯示Bactivity中的介面。當Bactivity已經執行到onResume()方法時,使用者可以進行互動,然後再執行Aactivity中的onStop()方法,這樣雖然比較耗時,但是是在後台啟動並執行,對使用者的使用沒有什麼影響。

 

android activity的生命週期

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.