Android四大組件之Activity的介紹

1、理論概述

1.1 Activity的理解

  • Activity, 直譯爲活動, 它是Android定義的四大應用組件之一,也是最重要用得最多的.
  • Activity用來提供一個能讓用戶操作並與之交互的界面
  • 一個應用有多個界面, 也就是包含多個Activity
  • 打電話,發短信, 拍照,發郵件等功能都是通過Activity來做的

1.2 Intent和IntentFilter的理解

1.2.1Intent的理解:

Intent, 直譯爲意圖, 也就是你想要做什麼或想要去哪?
Intent是Activity, Service和BroadcastReceiver這三個應用組件之間進行通信的信使,例如: 我要在Activity中啓動另一個Actvity, 就必須使用Intent對象,意圖對象還可以攜帶數據。
Intent的分類:
  • 顯示意圖 : 明確指定的目標組件的意圖。創建對象 : Intent(Context context, Class clazz)。何時使用 : 當操作當前自己應用的組件時使用
  • 隱式意圖 : 沒有明確指定目標組件的意圖。創建對象 : Intent(String action)。何時使用 : 當操作其它應用的組件時使用

1.2.2IntentFilter的理解

在配置Activity時, 可以爲Activity指定一個IntentFilter的配置。如果你的Activity希望其它應用能訪問到, 需要配置<intent-filter>。如果你想啓動其它應用的界面你必須用隱式intent, 且目標界面Activty配置了<intent-filter>

1.3 相關API

  • Intent: 意圖
Intent(Context packageContext, Class<?> cls) : 用於創建顯示意圖對象
Intent(String action): 用於創建隱式意圖對象
putExtra(String name, Xxx value): 保存額外數據
Xxx getXxxExtra(String name): 獲取額外數據
setData(Uri data): 設置有特定格式的uri數據
  • Activity: 活動
startActivity(Intent intent): 一般啓動Activity
startActivityForResult(int reqCode, Intent intent): 帶回調啓動Activity
onActivityResult(int reqCode, int resultCode, Intent data): 回調方法
setResult(int resultCode, Intent data): 設置要返回的結果
finish(): 結束當前Activity
getIntent(): 得到啓動Activity的意圖

2 、Activity的生命週期

2.1Activity界面的四種狀態

  • 運行狀態: 可見也可操作
  • 暫停狀態: 可見但不可操作
  • 停止狀態: 不可見,但對象存在
  • 死亡狀態: 對象不存在

2.2Activity的生命週期回調方法

onCreate()
onStart()
onRestart()
onResume()
onPause()
onStop()
onDestory()

2.3Activity的生命週期圖


3、Activity的launchMode

待續。。。

4、Activity的使用

待續。。。

參考資料:
http://android-doc.com/guide/components/activities.html
http://www.jianshu.com/p/8001b58582ce

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章