在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ Android Activity
Android 應(yīng)用組件
使用布局文件自定義Android組件
Android通知
Android主題示例
Android JetPlayer實例
Android MediaPlayer(多媒體播放)
Android AbsoluteLayout
Android FrameLayout
Android Gestures/手勢
Android AutoCompleteTextView(自動完成)實例
Android 資源組織和訪問
Android ListView
Android GridView
Android數(shù)據(jù)備份
Android撥打電話
Android發(fā)送短信/SMS
Android ProgressDialog
SimpleCursorAdapter
Android發(fā)送電子郵件
Android Activity
Android TextView
Android事件處理
Android TableLayout
Android加載Spinner
Android內(nèi)容提供者
Android自定義字體
Android Service
Android CheckBox
Android Intent過濾器
Android LinearLayout
Android登錄實例
Android RadioButton
Android樣式和主題
Android自定義組件及屬性
Android UI控件
Android Animation(動畫)實例
Android Camera(攝像頭)
Android ToggleButton
Android Clipboard(復(fù)制/剪貼板)
Android音頻捕獲(錄音)
發(fā)布Android應(yīng)用
Android Alertdialog(警告對話框)
Android圖片效果
Android內(nèi)部存儲
Android基于位置服務(wù)
Android RadioGroup
Android AutoCompleteTextView
Android Bluetooth(藍(lán)牙)實例
Android RelativeLayout
Android最佳實踐
Android本地化
Android自定義組件
Android教程
Android 架構(gòu)
Android UI布局
Android Button
Android Hello World示例
Android音頻管理器實例
ArrayAdapter
Android拖放
Android碎片/片段
Android圖片切換
Android JSON解析器
Android開發(fā)環(huán)境搭建
Android Spinner
Android樣式示例
使用活動代碼自定義Android組件
Android ImageButton
Android EditText
Android廣播接收器

Android Activity

活動(activity)表示一個單一屏幕上的用戶界面。例如,電子郵件應(yīng)用程序可能是一個活動,顯示新的電子郵件列表是另一個活動,撰寫電子郵件,閱讀電子郵件可能又是其它的活動。如果應(yīng)用程序有一個以上的活動,那么應(yīng)該將其中的一個活動標(biāo)記為活動啟動應(yīng)用程序。

如果曾使用C,C++或Java編程語言,那么可以知道一般程序是從 main() 函數(shù)開始。相似地,Android系統(tǒng)是一個Activity 的 onCreate() 方法調(diào)用開始啟動程序。一個回調(diào)方法 - 啟動一個活動,以及其它回調(diào)方法,如銷毀一個活動,活動的生命周期如下圖所示序列:

Android Activity lifecycle

Activity類定義了以下的回調(diào)方法,即事件。并不需要實現(xiàn)所有的回調(diào)方法。然而重要的是了解每一個變化以及實現(xiàn),以確保應(yīng)用程序如用戶所期望的行為或方式。

回調(diào)方法 描述
onCreate() 這是第一次回調(diào),活動在第一次創(chuàng)建時調(diào)用。
onStart() 這個回調(diào)被稱為活動時變成對用戶可見。
onResume() 這就是所謂的啟動,當(dāng)用戶與應(yīng)用程序交互。
onPause() 暫停活動不接收用戶輸入并不執(zhí)行任何代碼并調(diào)用時,當(dāng)前的活動被暫停,恢復(fù)以前的活動。
onStop() 這個回調(diào)被稱為活動時不再可見
onDestroy() 活動前由系統(tǒng)被銷毀,調(diào)用此回調(diào)
onRestart() 活動重新啟動時,停止后調(diào)用此回調(diào)

例子

這個例子通過簡單的步驟,顯示Android應(yīng)用程序活動的生命周期。按照下面的步驟來修改Android應(yīng)用程序,在創(chuàng)建的 Hello World 范例章節(jié):

步驟 描述
1 我們將使用Eclipse IDE中創(chuàng)建一個Android應(yīng)用程序,并將其命名在 HelloWorld 的包下,如:com.example.helloworld的Hello World范例章節(jié)解釋。
2 修改Main活動文件MainActivity.java,其余文件保持不變。
3 運行該應(yīng)用程序啟動Android模擬器并驗證應(yīng)用程序中所做的更改結(jié)果。

以下是修改主要活動文件src/com.example.helloworld/MainActivity.java后的內(nèi)容,該文件包含了每個基本生命周期方法。 Log.d() 方法是用來生成日志消息: 

package com.example.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;

public class MainActivity extends Activity {
   String msg = "Android : ";
   
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      Log.d(msg, "The onCreate() event");
   }

   /** Called when the activity is about to become visible. */
   @Override
   protected void onStart() {
      super.onStart();
      Log.d(msg, "The onStart() event");
   }

   /** Called when the activity has become visible. */
   @Override
   protected void onResume() {
      super.onResume();
      Log.d(msg, "The onResume() event");
   }

   /** Called when another activity is taking focus. */
   @Override
   protected void onPause() {
      super.onPause();
      Log.d(msg, "The onPause() event");
   }

   /** Called when the activity is no longer visible. */
   @Override
   protected void onStop() {
      super.onStop();
      Log.d(msg, "The onStop() event");
   }

   /** Called just before the activity is destroyed. */
   @Override
   public void onDestroy() {
      super.onDestroy();
      Log.d(msg, "The onDestroy() event");
   }
}

活動類加載UI組件,使用在項目的 res/layout 文件夾的XML文件。下面的語句從 res/layout/activity_main.xml 文件加載UI組件:

setContentView(R.layout.activity_main);

應(yīng)用程序可以有一個或多個活動受任何限制。每個活動定義為應(yīng)用程序必須在AndroidManifest.xml文件中聲明,必須聲明應(yīng)用程序的主要活動列表<intent-filter>,包括如下MAIN 操作和 LAUNCHER 類:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.helloworld"
   android:versionCode="1"
   android:versionName="1.0" >
   <uses-sdk
      android:minSdkVersion="8"
      android:targetSdkVersion="15" />
   <application
       android:icon="@drawable/ic_launcher"
       android:label="@string/app_name"
       android:theme="@style/AppTheme" >
       <activity
           android:name=".MainActivity"
           android:label="@string/title_activity_main" >
           <intent-filter>
               <action android:name="android.intent.action.MAIN" />
               <category android:name="android.intent.category.LAUNCHER"/>
           </intent-filter>
       </activity>
   </application>
</manifest>

如果 MAIN 動作或LAUNCHER類不聲明一個活動,那么應(yīng)用程序圖標(biāo)將不會出現(xiàn)在應(yīng)用程序列表的主屏幕上。 

現(xiàn)在嘗試運行修改后的 Hello World!應(yīng)用程序。假設(shè)已經(jīng)創(chuàng)建了AVD,同時做環(huán)境設(shè)置。從Eclipse運行應(yīng)用程序,打開一個項目的活動文件,并單擊“Run” Eclipse Run Icon 圖標(biāo)。Eclipse 在 AVD上安裝應(yīng)用程序,并啟動它,如果設(shè)置和應(yīng)用都沒有問題,它會顯示仿真器窗口中,也應(yīng)該看到以下日志消息在Eclipse IDE LogCat 窗口:

07-19 15:00:43.405: D/Android :(866): The onCreate() event
07-19 15:00:43.405: D/Android :(866): The onStart() event
07-19 15:00:43.415: D/Android :(866): The onResume() event
Android LotCat Window

點擊紅色按鈕Android Red Button - 在Android模擬器上的紅色按鈕,它會在Eclipse IDE窗口LogCat中生成以下事件消息:  

07-19 15:01:10.995: D/Android :(866): The onPause() event
07-19 15:01:12.705: D/Android :(866): The onStop() event

讓我們再次嘗試單擊菜單按鈕Android Menu Button - Android菜單按鈕在Android模擬器中,它會在Eclipse IDE 的 LogCat窗口中生成以下事件消息: 

上一篇:Android音頻捕獲(錄音)下一篇:Android自定義組件及屬性