日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

[轉(zhuǎn)載]Android?Activity生命周期

 My鏡像站 2012-01-16
Android被設(shè)計(jì)用于開發(fā)獨(dú)特要求的移動(dòng)應(yīng)用程序。尤其,Android認(rèn)為大多數(shù)移動(dòng)設(shè)備上的資源(例如:內(nèi)存和電池)是有限的,并提供了一些機(jī)制以保持這些資源。這些機(jī)制也體現(xiàn)在Android Activity生命周期中,生命周期描繪了一個(gè)Activity從創(chuàng)建到完成運(yùn)行的過程中的狀態(tài)或事件。這個(gè)生命周期也可以概略的用下圖來描述:
圖:Android Activity生命周期
[轉(zhuǎn)載]Android <wbr>Activity生命周期
通過對(duì)Activity類的事件方法重載以及實(shí)例化方法,你的Activity將監(jiān)視并且相應(yīng)下面這些事件:
onCreate
當(dāng)你的Activity被第一次創(chuàng)建時(shí)調(diào)用。在這個(gè)地方你將創(chuàng)建你的視圖,打卡你的Activity需要使用的任何持久數(shù)據(jù)文件,并且初始化你的Activity。當(dāng)調(diào)用onCreate時(shí),Android框架將同時(shí)傳遞一個(gè)以前運(yùn)行該Activity存儲(chǔ)的狀態(tài)Bundle對(duì)象。

onStart
在你的Activity顯示到屏幕之前調(diào)用。一旦onStart運(yùn)行完畢,如果你的Activity能夠成為顯示于屏幕的前端Activity,控制將會(huì) 傳遞到onResume。如果這個(gè)Activity不能成為運(yùn)行于屏幕的前端Activity,控制將傳遞到onStop方法。

onResume
當(dāng)你的Activity成為屏幕前端Activity后onResume將被立刻調(diào)用。在這個(gè)時(shí)間點(diǎn)你的Activity處于運(yùn)行狀態(tài)并且能與用戶進(jìn)行交 互。你可以接受鍵盤和觸摸輸入,并在屏幕上顯示你的用戶界面。當(dāng)你的Activity失去屏幕前端焦點(diǎn)時(shí)onResume也會(huì)被調(diào)用,并且這個(gè) Activity最終退出,而另一Activity將被彈到前端。這也是你的Activity將開始(或恢復(fù))的地方,并且可以做一些需要的事情比如更新 用戶界面(例如:接收位置更新或者運(yùn)行一個(gè)動(dòng)畫)。

onPause
當(dāng)Android試圖恢復(fù)一個(gè)不同的后端Activity到前端時(shí)調(diào)用。在這個(gè)時(shí)候你的Activity將不能在訪問屏幕,所以你應(yīng)該做一些節(jié)約電池和 CPU周期的事情。如果你在運(yùn)行一個(gè)動(dòng)畫,那么將不會(huì)有人再看到它,所以你應(yīng)該暫停它的運(yùn)行知道它再次被切換到屏幕前端。你的Activity需要利用這 個(gè)方法去保存再次恢復(fù)它到前端的需要的任何狀態(tài)——當(dāng)然不需要擔(dān)保你的Activity一定將被恢復(fù)。如果你的移動(dòng)設(shè)備運(yùn)行出現(xiàn)內(nèi)存溢出,并且沒有磁盤上 也沒有可用的虛擬內(nèi)存擴(kuò)展,那么你的Activity可能必須為需要內(nèi)存的系統(tǒng)進(jìn)程讓路。一旦你退出此方法,Android可能在任何時(shí)候殺掉你的 Activity而不會(huì)返回任何控制。

onStop
當(dāng)你的Activity不再可見時(shí)調(diào)用,或者當(dāng)另一個(gè)Activity被拿到前端或者你的Activity被銷毀時(shí)也會(huì)調(diào)用此方法。

onDestroy
在你的Activity被銷毀之前你還有一次機(jī)會(huì)可以做任何操作。通常你到達(dá)這個(gè)時(shí)間點(diǎn)是因?yàn)锳ctivity已經(jīng)完成框架也會(huì)調(diào)用它的完成方法。但是如先前所說,調(diào)用這方法還因?yàn)锳ndroid需要回收你的Activity消費(fèi)的資源。

利用這些方法盡可能提供最好的用戶體驗(yàn)是重要的。這也是本書討論移動(dòng)變成與桌面編程之間有何不同的第一個(gè)地方,在后面的章節(jié)中還會(huì)有許多類似的地方。如果你在編寫眾多Activity時(shí)考慮到Activity生命周期,你的用戶將會(huì)滿意而且你也將最終受益。

上面這段文章翻譯自:
Android Application Development
O'Reilly May 2009: First Edition
ISBN: 978-0-596-52147-9
by Rick Rogers, John Lombardo, Zigurd Mednieks, and Blake Meike

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多