Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android中的Intent詳細講解

Android中的Intent詳細講解

編輯:Android開發教程

在一個Android應用中,主要是由四種組件組成的,這四種組件可參考“Android應用的構 成”。而這四種組件是獨立的,它們之間可以互相調用,協調工作,最終組成一個真正的 Android應用。

在這些組件之間的通訊中,主要是由Intent協助完成的。

Intent負責對應用中一次操作的動作、動作涉及數據、附加數據進行描述,Android則根 據此Intent的描述,負責找到對應的組件,將 Intent傳遞給調用的組件,並完成組件的調用 。

因此,Intent在這裡起著一個媒體中介的作用,專門提供組件互相調用的相關信息,實現 調用者與被調用者之間的解耦。

例如,在一個聯系人維護的應用中,當我們在一個聯系人列表屏幕(假設對應的Activity 為listActivity)上,點擊某個聯系人後,希望能夠跳出此聯系人的詳細信息屏幕(假設對應 的Activity為detailActivity)

為了實現這個目的,listActivity需要構造一個 Intent,這個Intent用於告訴系統,我 們要做“查看”動作,此動作對應的查看對象是“某聯系人”,然後調用startActivity (Intent intent),將構造的Intent傳入,系統會根據此Intent中的描述,到ManiFest中找到 滿足此Intent要求的Activity,系統會調用找到的 Activity,即為detailActivity,最終傳 入Intent,detailActivity則會根據此Intent中的描述,執行相應的操作。

一、抽象描述要描述什麼

在Android參考文檔中,對Intent的定義是執行某操作的一個抽象描述(確實很抽象)。我 們先來看看這裡的抽象描述,到底描述了什麼。

首先,是要執行的動作(action)的一個簡要描述,如VIEW_ACTION(查看)、EDIT_ACTION( 修改)等,Android為我們定義了一套標准動作:

MAIN_ACTION
VIEW_ACTION
EDIT_ACTION
PICK_ACTION
GET_CONTENT_ACTION
DIAL_ACTION
CALL_ACTION
SENDTO_ACTION
ANSWER_ACTION
INSERT_ACTION
DELETE_ACTION
RUN_ACTION
LOGIN_ACTION
CLEAR_CREDENTIALS_ACTION
SYNC_ACTION
PICK_ACTIVITY_ACTION
WEB_SEARCH_ACTION

此外,我們還可以根據應用的需要,定義我們自己的動作, 並可定義相應的Activity來處理我們的自定義動作。

其次,是執行動作要操作的數據(data),Android中采用指向數據的一個URI來表示,如 在聯系人應用中,一個指向某聯系人的URI可能為:content://contacts/1。

這種URI表示,通過 ContentURI這個類來描述,具體可以參考android.net.ContentURI類 的文檔。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved