標籤:des android blog http ar 使用 sp strong 檔案
4.1.2 通過執行個體來親身體驗Activity的生命週期
上一小節介紹了Activity生命週期中的各個過程,本小節將以一個簡單的執行個體來使讀者親身體驗到Activity生命週期中的各個事件。
在Eclipse中建立一個Android工程,命名為example4_1,修改其MainActivity類中的內容如範例4-1所示。
【範例4-1Activity生命週期的示範】
01 //此處省略若干個匯入檔案,由Eclipse自動產生 02 public classMainActivity extends Activity { //類MainActivity繼承類Activity 03 String TAG="Activity生命週期事件"; 04 @Override 05 protected voidonCreate(Bundle savedInstanceState) { 06 super.onCreate(savedInstanceState); 07 setContentView(R.layout.activity_main); 08 Log.e(TAG,"啟動onCreate事件"); 09 } 10 @Override 11 protected voidonDestroy() { //重寫onDestroy事件 12 // TODO Auto-generatedmethod stub 13 super.onDestroy(); 14 Log.e(TAG,"啟動onDestroy事件"); //在LogCat中顯示記錄 15 } 16 @Override 17 protected void onPause(){ 18 // TODO Auto-generatedmethod stub 19 super.onPause(); 20 Log.e(TAG,"啟動onPause事件"); 21 } 22 @Override 23 protected voidonRestart() { 24 // TODO Auto-generatedmethod stub 25 super.onRestart(); 26 Log.e(TAG,"啟動onRestart事件"); 27 } 28 @Override 29 protected void onResume(){ 30 // TODO Auto-generatedmethod stub 31 super.onResume(); 32 Log.e(TAG,"啟動onResume事件"); 33 } 34 @Override 35 protected void onStart(){ 36 // TODO Auto-generatedmethod stub 37 super.onStart(); 38 Log.e(TAG,"啟動onStart事件"); 39 } 40 @Override 41 protected void onStop() { 42 // TODO Auto-generatedmethod stub 43 super.onStop(); 44 Log.e(TAG,"啟動onStop事件"); 45 } 46 }
運行之後即可看到在LogCat視窗中顯示出4-2所示的內容。
提示:可以通過設定過濾器來過濾LogCat中的資訊,使之只顯示與該Activity有關的記錄,4-3所示。過濾後的內容4-4所示。
回過頭來再看上一小節中對啟動Activity的描述,要啟動一個Activity需要經曆onCreate、onStart、onResume 3個事件,在圖4-4中可以確認這一點。可以通過對手機的進一步操作來驗證上一小節中的內容,比如點擊HOME鍵或返回鍵來觀察LogCat中的日誌記錄。
圖4-2 Activity啟動時所經曆的事件
圖4-3 利用Tag標籤過濾LogCat中的資訊
圖4-4 過濾後的LogCat視窗
在Eclipse的代碼編輯地區右擊,依次選擇Source|Overridemethods命令可以看到一些其他的事件,4-5所示。
圖4-5 Activity中的一些其他事件
這類事件大多對應著應用的某一特定操作或錯誤。比如事件OnTitleChanged就是在應用的標題被修改時由系統所發出的事件;再比如聽音樂,音樂播放至1分50秒時突然打進來一個電話,系統就會對播放器的Activity使用onPause方法,同時啟動一個接電話的Activity,當使用者接完電話後則又會通過onRestar方法和onStar方法返迴音樂播放介面,並調整音樂播放進度為1分50秒。
清華大學出版社推出的《構建跨平台APP:Phonegap行動裝置 App實戰》是一本APP實戰書,包含20多個APP執行個體和3個APP項目,還結合了HTML5移動開發。本書面向移動開發入門人員,低門檻,淺閱讀,最適合移動APP創業小白。本次發布第3~5章作為讀者學習的基礎,有興趣的歡迎購買本書!歡迎加群:348632872,向作者直接提問交流!
小白學phoneGap《構建跨平台APP:phoneGap行動裝置 App實戰》連載三(通過執行個體來體驗生命週期)