資源描述:
《兩分鐘徹底讓你明白Android_Activity生命周期(圖文)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、兩分鐘徹底讓你明白AndroidActivity生命周期(圖文)!收藏大家好,今天給大家詳解一下Android中Activity的生命周期,我在前面也曾經(jīng)講過(guò)這方面的內(nèi)容,但是像網(wǎng)上大多數(shù)文章一樣,基本都是翻譯AndroidAPI,過(guò)于籠統(tǒng),相信大家看了,會(huì)有一點(diǎn)點(diǎn)的幫助,但是還不能完全吃透,所以我今天特意在重新總結(jié)一下.首先看一下Androidapi中所提供的Activity生命周期圖(不明白的,可以看完整篇文章,在回頭看一下這個(gè)圖,你會(huì)明白的):Activity其實(shí)是繼承了ApplicationContext這個(gè)類,我們可以重寫以下方法,如下代碼:viewplain
2、copytoclipboardprint?1.publicclassActivityextendsApplicationContext{2.protectedvoidonCreate(BundlesavedInstanceState);3.4.protectedvoidonStart();5.6.protectedvoidonRestart();7.8.protectedvoidonResume();9.10.protectedvoidonPause();11.12.protectedvoidonStop();13.14.protectedvoidonDestroy()
3、;15.}為了便于大家更好的理解,我簡(jiǎn)單的寫了一個(gè)Demo,不明白Activity周期的朋友們,可以親手實(shí)踐一下,大家按照我的步驟來(lái)。第一步:新建一個(gè)Android工程,我這里命名為ActivityDemo.第二步:修改ActivityDemo.java(我這里重新寫了以上的七種方法,主要用Log打印),代碼如下:viewplaincopytoclipboardprint?1.packagecom.tutor.activitydemo;2.importandroid.app.Activity;3.importandroid.os.Bundle;4.importandro
4、id.util.Log;5.publicclassActivityDemoextendsActivity{6.7.privatestaticfinalStringTAG="ActivityDemo";8.9.publicvoidonCreate(BundlesavedInstanceState){10.super.onCreate(savedInstanceState);11.setContentView(R.layout.main);12.13.Log.e(TAG,"startonCreate~~~");14.}15.16.@Override17.protectedv
5、oidonStart(){18.super.onStart();19.Log.e(TAG,"startonStart~~~");20.}21.22.@Override23.protectedvoidonRestart(){24.super.onRestart();25.Log.e(TAG,"startonRestart~~~");26.}27.28.@Override29.protectedvoidonResume(){30.super.onResume();31.Log.e(TAG,"startonResume~~~");32.}33.34.@Override35.p
6、rotectedvoidonPause(){36.super.onPause();37.Log.e(TAG,"startonPause~~~");38.}39.40.@Override41.protectedvoidonStop(){42.super.onStop();43.Log.e(TAG,"startonStop~~~");44.}45.46.@Override47.protectedvoidonDestroy(){48.super.onDestroy();49.Log.e(TAG,"startonDestroy~~~");50.}51.52.}第三步:運(yùn)行上述工
7、程,效果圖如下(沒(méi)什么特別的):核心在Logcat視窗里,如果你還不會(huì)用Logcat你可以看一下我的這篇文章Log圖文詳解(Log.v,Log.d,Log.i,Log.w,Log.e),我們打開應(yīng)用時(shí)先后執(zhí)行了onCreate()->onStart()->onResume三個(gè)方法,看一下LogCat視窗如下:BACK鍵:當(dāng)我們按BACK鍵時(shí),我們這個(gè)應(yīng)用程序?qū)⒔Y(jié)束,這時(shí)候我們將先后調(diào)用onPause()->onStop()->onDestory()三個(gè)方法,如下圖所示:HOME鍵:當(dāng)我們打開應(yīng)用程序時(shí),比如瀏覽器,我正在瀏覽NBA新聞,看