2011-08-23 145 views

回答

2

當使用意圖開始新活動時,您可以選擇查看某些數據或根據需要編輯它,方法是分別指定ACTION_EDITACTION_VIEW之一。可能是這兩種意圖開始相同的活動,因此結果與您選擇的結果相同,或者它們可能映射到不同的活動,並且ACTION_EDIT將啓動數據可編輯的活動並且ACTION_VIEW將開始一個沒有的活動。顧名思義,您應該選擇與您的意圖最匹配的動作。如果您爲自己的活動指定了一個過濾器,則還應該記住這一點,並過濾您的活動旨在履行的操作。

編輯:數據是指你打算採取什麼行動。通常,一個Intent包含兩件事:一個動作和你想要執行動作的數據。以下是the javadoc的簡要說明(這是非常好的,我建議你讀意圖解決的部分):

行動 - 一般要執行的操作,如ACTION_VIEW,ACTION_EDIT,ACTION_MAIN等。

data - 用於操作的數據,例如聯繫人數據庫中的人員記錄,以Uri表示。

使用該信息,Android將嘗試找到最適合您的意圖的服務(使用符合您意圖的過濾器)。應用程序中的活動優先於其他應用程序中的活動,但在第三方應用程序中調用活動是可行的和常見的。

+0

「開始一個數據可編輯的活動」的意思是什麼?數據是否意指數據屬性? 感謝您的回答。 –

+0

但據我所知,ACTION_EDIT意圖中的數據屬性僅針對意圖過濾器的minetype,對吧? –

+0

@ user674199看我的編輯。 –