精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Android SDK上手指南:Activity與生命周期

譯文
移動開發 Android
Activity生命周期并不僅僅在用戶運行應用程序之后才開始生效,事實上它也影響著用戶切出以及切回應用時得到的不同反饋。當我們開發一款應用時,首先需要牢記一點:用戶會經常在執行過程中、在我們的應用與其它應用之間頻繁切換。

介紹

Activity生命周期并不僅僅在用戶運行應用程序之后才開始生效,事實上它也影響著用戶切出以及切回應用時得到的不同反饋。當我們開發一款應用時,首先需要牢記一點:用戶會經常在執行過程中、在我們的應用與其它應用之間頻繁切換。取決于用戶的操作方式,同一款應用程序有時在前臺運行、有時則在后臺運行。大家必須保證自己的應用能夠就會這類情況,并在此類切換過程中及時保存并恢復數據。再次提醒各位,這一過程對于某些特定應用程序略有不同——例如功能性組件。

1.回調方法

***步

為了控制Activity處于不同狀態下時應用程序的運行方式,例如當用戶切出或者切回應用,大家可以選擇多種處理方法。這類方法也就是Activity生命周期回調方法。Android系統會在我們的Activity進入某種特定狀態后調用這些方法,從而通過一系列步驟確保我們的應用程序能夠繼續起效、不至于丟失數據而且在用戶不與之交互時不會使用非必要性資源。每一種回調方法都會讓我們的應用進入一種可能的狀態。

如果大家之前曾經接觸過Java應用程序的編程工作,那么應該已經發現Android應用程序的啟動遵循另一種方式。與Java應用直接使用主方法不同,Android在啟動后會首先執行主Activity類中的onCreate方法。請記住,我們已經在清單中將該類指定為主啟動Activity。Activity會首先回調onCreate方法,相當于重復用戶啟動應用程序后的流程。這時候onCreate方法會使應用程序進入Created狀態。

開發者指南當中通過示意圖以直觀方式介紹了生命周期、回調方法以及狀態的概念。其中onResume方法負責提供Resumed狀態,這時我們的應用程序可以接受用戶的直接操作。其它各類回調方法都以onResume為核心,即將應用程序引導至Resumed狀態或者從該狀態脫離、啟動該狀態或者將其停止。

對于大部分應用程序來說,我們只需要使用一部分回調方法,但最起碼要用到onCreate。雖然使用頻率不高,但了解全部回調及狀態的作用將幫助我們了解自己的應用程序在運行及停止運行時,Android系統會受到怎樣的影響。一般情況下,大家需要保證用戶能夠在任何操作過程切換出去之后、都能順利恢復到之前的運行狀態;如果他們通過導航選擇前進或者后退,應用則需保存全部必要數據并釋放不必要占用的硬件資源。

第二步

我們的應用程序可能處于以下五種狀態,分別為:Created、Started、Resumed、Paused以及Stopped。另有七種回調方法能夠讓應用進入或者脫離上述狀態,它們分別是:onCreate、onStart、onRestart、onResume、onPause、onStop以及onDestroy。這些方法能夠讓我們的應用程序在可能的狀態之間進行切換,而且某些情況下切換速度會很快。通常來說,大家可以認為自己的應用程序始終處于resumed、paused或者stopped這三種狀態之下,因為其它狀態都是暫時性的。

當我們的應用程序正處于運行當中且用戶與之進行操作交互,這時的應用狀態為Resumed;當另一個Activity處于前臺但僅僅使我們的應用被部分隱藏時,這時的應用狀態為Paused——在這種狀態下用戶無法再與應用進行交互。當我們的應用完全處于后臺之下,而且用戶既無法操作、也無法觀看到它時,其狀態即為Stopped。在這種狀態下Activity會保留之前的所有數據,但無法加以執行。

2.進入Resumed狀態

如我們所知,主Activity會在應用程序啟動時開始運行,onCreate方法也將執行、從而讓我們準備該類所需要的Activity UI以及全部數據條目。我們創建的大部分應用當中都包含不只一個Activity,其它Activity會在用戶與應用程序進行操作交互時啟動。大家可以利用以下代碼通過Intent類啟動另一個非主Activity:

這代表著應用程序包中另一個名為“About”的Activity類。大家可以通過選擇自己的源碼包而后選擇“文件”、“新建”、“類”的方式在Eclipse當中創建一個新Activity,而后將該Android Activity類選定為超級類。請記住,每一個Activity都必須在我們的應用程序清單當中列出。大家還可以利用Intent類實現不同Activity之間的數據轉移。

當一個Activity處于運行當中時,onCreate方法也在同時執行,因此除了把其它Activity類列入清單之外、大家也能夠以與主Activity類似的方式在應用程序當中處理這些類。我們也可以為每個Activity創建一個布局文件,并通過設置讓其使用與主Activity同樣的技術機制。

在某個Activity的onCreate方法開始執行之后,onStart與onResume兩個方法也將開始執行, 從而使該Activity處于Resumed狀態、并在后續執行過程中根據情況轉換為Created以及Started狀態。

我們的Activity可以通過不只一種方式進入Resumed狀態,應用程序啟動只是其中最基本的途徑。如果Activity處于Paused或者Stopped狀態,則應用程序切換至當前之后該Activity將直接進入前臺運行模式,且無需重復調用onCreate方法。如果大家的應用從Paused狀態切換回Resumed狀態,則Activity的onResume方法將開始執行。如果該應用由Stopped狀態切換回運行狀態,則執行onRestart方法、而后依次為onStart與onResume方法。

3.進入Destroyed狀態

***步

當我們的應用程序處于退出或者隱藏狀態下,則Resumed就會轉變為Destroyed。這時候,onPause方法會將應用的Activity由運行時的Resumed狀態轉換為Paused狀態。在onPause當中,大家應當停止任何需要占用資源的任務,例如動畫播放、傳感器數據處理以及廣播接收等等。如果onPause正在執行,那么onStop也可以開始執行,因為用戶此時通常已經通過導航退出了我們的應用程序。大家還可以利用onPause方法進行數據保存——雖然通常來說數據保存工作由onStop方法來負責最為妥當。

正如我們之前曾經提到,大家的Activity能夠通過onResume方法從Paused狀態重新回歸至Resumed狀態。這意味著我們可以利用onResume來恢復任何我們之前在onPause當中停止或者發布過的內容。不過大家還需要記住一點,onResume在其它情況下也會付諸執行,例如在應用程序啟動時。

第二步

在onPause之后,如果應用程序進入Stopped狀態,那么onStop也將開始執行。在這種情況下,onRestart、onStart以及onResume等方法仍然能夠使應用程序重新回到Resumed狀態。在onStop中,大家應當盡可能壓縮只在必要數據的操作量,例如向數據庫中寫入內容。請大家確保在onStop當中囊括了所有應用程序所使用的資源,從而避免該應用在被徹底關閉之后導致內存溢出問題。

這套系統會在應用程序從resumed狀態切換至stopped狀態后保存特定數據,例如視圖中需要顯示的內容。當某個Activity從Stopped狀態恢復到Resumed狀態時,onRestart、onStart以及onResume方法都會開始執行。不過onStart與onResume的執行情況有所不同——例如在應用程序啟動之時。而onRestart方法只會在應用程序從Stopped狀態恢復至前臺之后才會執行,這樣大家就能利用它來恢復任何保存在onStop當中的運行內容。

提示:當大家從一個Activit之下啟動另一個Activity時,前者會進入Stopped狀態。如果用戶隨后利用后退按鈕再次由后者返回先前的Activity當,那么前者的onRestart方法就會開始執行。

第三步

如果大家的應用程序即將徹底關閉,例如我們的當前Activity被從系統當中移除,則onDestroy方法會開始執行。盡管這是在我們的Activity完全消失之前執行的***一個方法,大家仍然不應該簡單地將所有內容一股腦清除。事實上,我們需要利用onStop或者onPause來處理結束工作。當然也有例外情況,如果應用程序的后臺進程仍然處于運行狀態,那么這時候大家應該在onDestroy當中將其停止。

在onDestroy執行之后,如果用戶通過導航返回應用程序Activity,則對應onCreate方法將再次被啟動。一般情況下,大家可以假設onPause與onStop會在onDestroy之前執行。不過如果大家明確調用finish方法來結束一個Activity,則只有onDestroy會被執行。

在多數情況下,我們并不需要為應用程序當中的生命周期回調問題投入過多精力,因為大家完全可以利用onCreate方法的參數實現數據保留效果。在Activity onCreate方法當中,Bundle參數負責如前所述自動進行視圖信息保存。不過大家也可以利用該對象保存更多數據內容,例如記錄用戶與應用程序之間的交互所產生的變量更新。要實現這一目標,大家可以在Activity類當中使用onSaveInstanceState方法,完成數據鍵值對的編寫之后、我們就可能在onCreate當中將其恢復。

提示:當用戶改變設備顯示模式時,也就是在縱向及橫向模式間進行切換,我們的Activity實際上會經歷重新創建、onCreate也會被再次執行。這一過程被我們稱為配置變化。在這種情況下,系統會假設大家需要重新創建Activity,例如大家在每種顯示模式下使用不同的布局方案。不過在多數情況下,大家可能不希望系統照此辦理。為了避免我們的Activity在顯示模式轉換時發生重新創建,大家可以從兩種解決方式中作出選擇:向清單內的Activity添加“android:configChanges”屬性,或者調整我們的Activity結構、利用我們在配置變量時所保留的Fragments。

總結

當大家開始學習如何為Android平臺開發應用程序時,Activity當中所涉及的大量狀態與回調方法可能會成為很多難題乃至混亂的根源。然而在大多數情況下,我們只需要采用***數量的方法以確保自己的應用程序有能力提供用戶所預期的功能與效果。在本系列教程的下一篇當中,我們將共同了解部分常用Android類,大家很可能會在自己的***款應用當中與它們打交道。在此之后,我們將著眼于Android代碼示例、需要了解的應用程序發布知識以及其它一些關于今后進一步學習的建議。

原文鏈接:

http://mobile.tutsplus.com/tutorials/android/android-sdk-activities-lifecycle/

責任編輯:張葉青 來源: 51CTO
相關推薦

2013-12-26 15:14:38

Android SDK運行調試

2013-12-04 14:44:41

Android SDK用戶交互

2013-12-26 15:40:33

Android SDK項目

2013-12-04 13:27:56

Android SDK項目

2014-01-22 10:00:10

Android SDKAndroid開發

2011-06-16 09:31:21

ActivityAndroid

2013-12-04 14:29:18

Android SDK應用程序

2013-12-26 15:47:59

Android SDK應用程序

2013-11-27 10:12:11

2013-12-26 14:52:52

Android SDK物理設備

2021-07-19 05:52:29

網絡生命周期網絡框架

2013-12-04 13:51:38

Android SDK應用程序

2013-12-04 15:20:33

Android SDK應用程序

2013-12-04 15:11:03

Android SDK應用程序

2014-03-16 09:21:39

Android開發Android SDK

2010-01-26 13:20:02

Android Act

2014-06-24 09:41:56

Android Stu教程

2021-08-24 07:53:28

AndroidActivity生命周期

2014-02-28 11:01:22

Android開發Android SDK

2021-01-26 08:37:18

MobXVueReact
點贊
收藏

51CTO技術棧公眾號

www.国产视频.com| 亚洲狠狠婷婷综合久久久| 美女的奶胸大爽爽大片| 911精品国产| 婷婷久久综合九色国产成人| 精品欧美一区二区在线观看视频 | 久久久久国产精品麻豆| 欧美自拍大量在线观看| 欧美激情 一区| 刘亦菲一区二区三区免费看| 亚洲国产精品二十页| 亚洲999一在线观看www| 天天操天天射天天爽| 网友自拍一区| 欧美视频中文字幕| 大西瓜av在线| av亚洲在线| 国产xxx精品视频大全| 91av在线影院| 日本 欧美 国产| 激情小说亚洲图片| 在线免费精品视频| 国产1区2区3区中文字幕| 久久米奇亚洲| 国产成人精品综合在线观看 | 蜜桃欧美视频| 91欧美日韩麻豆精品| 亚洲福利久久| 日韩在线观看免费全| 国产chinese中国hdxxxx| 日韩大片欧美大片| 亚洲国产精品麻豆| 中文字幕免费高| 刘亦菲毛片一区二区三区| 免费看的黄色欧美网站| 免费97视频在线精品国自产拍| avtt香蕉久久| 日韩第一区第二区| 欧美日韩精品二区第二页| 成年人网站免费视频| 久草中文在线| 欧美激情在线免费观看| 国产98在线|日韩| 黄色一级视频免费看| 欧美午夜一区| 久久久久www| 波多野吉衣中文字幕| 亚洲一区网址| 51精品秘密在线观看| 天堂中文视频在线| 特黄毛片在线观看| 亚洲444eee在线观看| 艳母动漫在线免费观看| yw视频在线观看| 91丨九色porny丨蝌蚪| 国产成人看片| 精品人妻伦一区二区三区久久| 看片的网站亚洲| 国产成人久久久精品一区| 久久高清免费视频| 欧美视频久久| 久久99精品视频一区97| 99鲁鲁精品一区二区三区| 久久国产精品成人免费观看的软件| 亚洲加勒比久久88色综合| 国产欧美视频一区| 国产午夜亚洲精品一级在线| 欧美日韩激情一区二区三区| 欧美视频免费看欧美视频| 在线中文免费视频| 亚洲男人电影天堂| 国产内射老熟女aaaa| 国产原创精品视频| 亚洲精品久久久蜜桃| 四虎免费在线观看视频| 老司机精品影院| 亚洲同性gay激情无套| 亚洲一区二区精品在线观看| 思思99re6国产在线播放| 国产精品天天看| 午夜在线视频免费观看| 黄视频网站在线| 一区av在线播放| 2019日韩中文字幕mv| av手机在线观看| 婷婷开心激情综合| 免费高清在线观看免费| 国产精品伦理| 欧美日韩一区在线| 一级片免费在线观看视频| 欧美9999| 亚洲成在人线av| 毛茸茸free性熟hd| 亚洲欧美校园春色| 社区色欧美激情 | 懂色av懂色av粉嫩av| 红桃视频欧美| 欧美最猛性xxxx| 最新中文字幕免费| 国产精品1区二区.| 久久国产精品99久久久久久丝袜 | 天天鲁一鲁摸一摸爽一爽| 欧美先锋影音| 国产ts人妖一区二区三区| 中文字幕日韩经典| 成人综合在线视频| 欧洲高清一区二区| 日本不卡不卡| 亚洲成人动漫在线观看| 成人中文字幕av| 国产高清亚洲| 国产视频精品xxxx| 久久精品亚洲a| 99精品国产一区二区青青牛奶| 清纯唯美亚洲综合| 国产精品久久久久精| 成人丝袜18视频在线观看| 欧美激情第六页| 国产91色在线|亚洲| 欧美三级在线观看视频| 亚洲第一会所001| 在线中文字幕一区| 久久精品无码专区| 日韩一区二区中文| 欧美高跟鞋交xxxxxhd| www亚洲视频| 国产美女在线观看一区| 牛人盗摄一区二区三区视频| 超碰人人在线| 91成人免费在线视频| 风韵丰满熟妇啪啪区老熟熟女| 日本久久精品| 欧美二区乱c黑人| 久久精品国产亚洲av麻豆蜜芽| 国产成人鲁色资源国产91色综| 日韩亚洲视频| sm久久捆绑调教精品一区| 在线成人免费视频| a级片在线观看| 日韩亚洲在线| caoporen国产精品| 国产福利视频在线观看| 日本韩国欧美一区二区三区| 催眠调教后宫乱淫校园| 欧美激情1区| 成人www视频在线观看| 人妻精品一区一区三区蜜桃91| 中文字幕在线不卡一区| 成年人网站大全| 窝窝社区一区二区| 久久人人爽人人爽人人片av高清| 国产欧美一级片| 国产精品视频yy9299一区| 国产成人无码精品久久久性色| 精品国产亚洲一区二区三区大结局 | 国内不卡的二区三区中文字幕| 欧洲视频一区二区三区| 中国字幕a在线看韩国电影| 精品国产91乱码一区二区三区| 国产福利视频网站| 老汉av免费一区二区三区| 秋霞在线观看一区二区三区| 色老太综合网| 亚洲日韩欧美视频一区| 精品国产免费观看| 99国产精品久久久久久久久久久| 久久国产精品网| 精品按摩偷拍| 88xx成人精品| 免费在线视频你懂得| 欧美性极品xxxx做受| 亚洲久久久久久| 亚洲一区二区三区四区五区午夜 | 中文成人在线| 亚洲天堂网在线观看| av手机天堂网| 国产精品久久影院| 两性午夜免费视频| 性欧美69xoxoxoxo| 99精彩视频| 51av在线| 亚洲欧美制服中文字幕| 国产美女www| 日韩美女精品在线| av不卡中文字幕| 国内精品久久久久久久影视蜜臀| 超碰97网站| 松下纱荣子在线观看| 亚洲人成电影网站色www| 少妇又紧又色又爽又刺激视频| 国产精品久久免费看| 成人性生交视频免费观看| 欧美精品aa| 免费日韩电影在线观看| 国产精品无码久久久久| 欧美成人免费观看| 图片区 小说区 区 亚洲五月| 色综合网站在线| b站大片免费直播| 加勒比av一区二区| 国产玉足脚交久久欧美| 国产精品嫩模av在线| 国产欧美精品一区二区三区-老狼 国产欧美精品一区二区三区介绍 国产欧美精品一区二区 | 亚洲欧美综合区自拍另类| 中文字幕av久久爽| 洋洋成人永久网站入口| 国产传媒第一页| 国产一区二区剧情av在线| 免费观看美女裸体网站| 日韩在线观看一区| 国产精品初高中精品久久| 日韩欧美一区二区三区免费观看| 久久久精品一区| 内衣办公室在线| 日韩一区二区免费在线电影| 国产又黄又猛又粗又爽| 国产精品久久久久婷婷二区次| 女人高潮一级片| 久久蜜桃精品| 日韩精品综合在线| 亚洲欧美成人vr| 国产福利久久精品| 外国成人毛片| 欧美亚洲在线视频| 制服丝袜中文字幕在线| 中文字幕在线成人| 无码国产精品一区二区免费16| 欧美巨大另类极品videosbest| 亚洲免费在线视频观看| 亚洲精品国产成人久久av盗摄 | 国产精品探花视频| 精品美女永久免费视频| 久久免费看少妇高潮v片特黄| 久久久久国产一区二区三区四区 | 国产真人真事毛片| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 免费毛片网站在线观看| 国产精品成人a在线观看| 日本在线观看不卡| 日本福利一区| 国产精品免费一区二区三区| 欧美激情三级| 成人天堂噜噜噜| 开心久久婷婷综合中文字幕| 国产成人涩涩涩视频在线观看| xxxx另类黑人| 久久久视频精品| 色网在线观看| 久久精品视频一| 日本在线免费网| 亚洲色图色老头| 免费在线一级视频| 日韩精品中文字幕在线播放| 网站黄在线观看| 亚洲国产欧美在线成人app| 国产又大又黄又爽| 欧美巨大另类极品videosbest | 91caoporn在线| 亚洲性视频网址| 国产在线资源| 亚洲一区第一页| 毛片免费在线播放| 亚洲欧美在线一区二区| 男人天堂网在线观看| 欧美sm极限捆绑bd| 亚洲欧美另类一区| 欧美mv日韩mv| 天天操天天插天天射| 精品第一国产综合精品aⅴ| 二区三区在线视频| 亚洲精品电影网在线观看| 天天色天天操天天射| 精品一区二区三区四区| 毛片在线播放网址| 日日摸夜夜添一区| 在线观看的网站你懂的| 色综合91久久精品中文字幕| 免费观看成人高潮| 欧美乱大交xxxxx| √8天堂资源地址中文在线| 欧美亚洲日本网站| 8av国产精品爽爽ⅴa在线观看| 国产精品毛片a∨一区二区三区|国 | 免费91在线视频| 久久五月精品中文字幕| 97视频com| 日韩高清成人| 国产一区私人高清影院| 成人在线视频你懂的| 日韩欧美亚洲精品| 激情久久久久久| 亚洲这里只有精品| 成人国产精品视频| 99自拍偷拍视频| 丁香五六月婷婷久久激情| 国产精品污视频| 国产午夜精品视频| www在线看| 成人久久久久爱| 亚洲日产av中文字幕| 日韩精品一区二区在线视频| 老司机精品导航| 无码人妻一区二区三区在线| 国产精品人人做人人爽人人添 | 午夜影院日韩| 国产探花一区二区三区| 国产精品乱码一区二区三区软件| 影音先锋亚洲天堂| 欧美一级片免费看| 中文日本在线观看| 国产成人精品av在线| 国产乱人伦精品一区| 性欧美18一19内谢| 日韩成人av影视| 国产色视频一区二区三区qq号| 亚洲综合999| 国产超碰人人模人人爽人人添| 一本一本久久a久久精品牛牛影视 一本色道久久综合亚洲精品小说 一本色道久久综合狠狠躁篇怎么玩 | 欧美自拍丝袜亚洲| av女名字大全列表| 久久久噜噜噜久噜久久| 日韩一区二区三区在线看| 亚洲欧美日韩精品久久久| 久久综合网络一区二区| 精品一区二区视频在线观看 | 超碰成人免费在线| 国产麻豆91精品| 潮喷失禁大喷水aⅴ无码| 在线欧美日韩国产| 嫩草研究院在线| 国产97在线亚洲| 亚洲va久久| 成人综合视频在线| 成人听书哪个软件好| 久久久久久久久久一区二区三区| 欧美一区二区久久| a在线免费观看| 亚洲精品日韩av| 欧美精品日韩| 色哟哟网站在线观看| 一个色妞综合视频在线观看| 亚洲xxx在线| 国内精品在线一区| 欧美精品密入口播放| 成人免费在线小视频| 91亚洲国产成人精品一区二三| 亚洲第一在线播放| 国产手机视频精品| 蜜桃视频成人m3u8| 台湾成人av| 九九**精品视频免费播放| 亚洲综合网在线| 精品国产3级a| 欧美电影免费观看高清完整| 欧美在线视频二区| 免费欧美在线视频| 性欧美疯狂猛交69hd| 日韩欧美精品在线视频| 91超碰在线| 欧洲亚洲一区| 国产一区二区精品久久| 五月天综合在线| 亚洲欧美制服另类日韩| 国产精品美女午夜爽爽| 三年中文高清在线观看第6集| 国产福利电影一区二区三区| 日韩av电影网址| 亚洲小视频在线观看| 豆花视频一区| 浮妇高潮喷白浆视频| 国产日韩成人精品| 国产夫绿帽单男3p精品视频| 亚州精品天堂中文字幕| 日韩亚洲一区在线| 日韩综合第一页| 欧美三级电影在线观看| 丝袜美腿av在线| 欧美最大成人综合网| 国产精品白丝av| 色一情一乱一伦| 久久人体大胆视频| 欧美福利在线播放网址导航| 亚洲国产高清av| 午夜伦欧美伦电影理论片| 91社区在线观看播放| 国产精品久久波多野结衣| 久久婷婷久久| 久久久久成人精品无码| 亚洲欧美综合另类中字| 亚洲精品一区二区三区中文字幕| 欧美日韩一区二区在线免费观看| 亚洲乱码中文字幕| 成人在线观看免费| 国产精品区一区| 久久99精品久久久久| 四虎成人在线观看| 欧美富婆性猛交| 五月天久久777| 欧美 日韩 成人| 亚洲国产精品一区二区三区|