我不太瞭解意圖的使用和概念。我明白,一個活動是一個可視界面和一個用戶可以參與的努力。我認爲一個活動用於在不同活動之間發起和交流。如果是這樣,那麼你將如何實現?代碼示例會很有幫助。以類比的形式,嘗試將意圖與日常生活中的某些事物進行比較。這非常有幫助!Android中的意圖的概念?
回答
可以使用Intent
通過提供動作和一些數據來啓動活動。使用Intent
操作來查看一個網頁的例子:
Intent myIntent = new Intent(Intent.VIEW_ACTION,
Uri.parse("http://www.google.com"));
行動的地方Intent.VIEW_ACTION
和數據線是谷歌網站的Uri
。
Common Tasks and How To Do Them in Android
我都試過了,但其強硬的一個Intent
在日常生活中的東西進行比較。如果我想出點什麼,我會用我的答案記下來。
你說得對,它是在應用程序之間啓動和通信的。
http://developer.android.com/guide/topics/fundamentals.html
這有意圖的基礎。如果需要返回值,則需要使用.startActivityForResult()而不是startActivity(),並且在返回值時使用onActivityResult(Intent intent)方法充當監聽器。
該構造函數需要2部分。首先是一個int,它在Intent類中是一個常量,用來告訴系統你想要對數據做什麼。第二個將是一個在活動之間傳遞數據的URI。系統然後使用它們來決定將它放入活動請求時應傳遞給哪個App。至於你的比喻,我不知道,那有點困難,沒有什麼比這更像。我想最接近你會得到的東西是給你的老闆,告訴他你需要別人去做一些你不能做的事情。
引述API docs,一個Intent
基本上是一個被動數據結構保持的的動作的抽象描述要執行,具有兩個伯條信息,動作和數據。
從最基本的層面來看,Intent
可以被看作是一個你可以告訴Android調用的動作 - 而發生什麼取決於該動作的註冊內容。
Intent
的動作部分是字符串或字符串常量,數據部分是表示URI
的字符串。除了這些主要屬性之外,還可以通過額外的屬性添加新的屬性,這只是鍵值對的映射。
欲瞭解更多信息,請參閱Intents and Intent Filters,Intent類或Playing with Intents。
我還推薦書Pro Android,詳細地瞭解這些API的細節。有一個稱爲Pro Android 2的新版本(還沒有讀過)。
如果您搜索Google Books for it,您可以看到該書的摘錄,查看第3章「使用資源,內容提供者和意圖」以獲取更多信息。
一個意圖本質上是一種應用程序聲明需要的方式。這些工作與IntentFilters一起工作,基本上是另一個Activity或Service可以爲任何人需要的功能的聲明。
意圖通常由兩部分構成,一部分信息和一個數據部分,通常是一個URI(想一個網站,GPS數據或撥打聯繫人)。
要使用意圖,您必須使用此類信息和數據創建您的意圖,然後將其分派到另一個活動,服務或廣播接收器,然後通常綁定意圖並執行您請求的某種操作。
Android API詳細介紹瞭如何構建自己的IntentFilters和Receiver的具體細節。在那裏尋找更多的信息。
假設你在你的朋友一間兩間屋子裏,沒有門,沒有屋頂,你想給他一些他需要的東西。所以你要做的就是把它放在你房間的普通牆壁上,以便他可以從另一邊拿走那個東西。 可能你會轉儲一些onfo意圖(在某些活動),這是全球性的,並從另一端(在下一個活動)採取該信息。
我發現意圖很熟悉,尤其是在應用程序集成方面的一些經驗。 intents基本上是消息,Android intent/activity對是一個message based architecture使用單播和多播,保證交付(我相信)的異步消息,但沒有保證排序。
基於消息的交互的美妙之處在於,在代碼依賴性(它們只需知道共享意圖類型及其有效負載)方面,它們可以相互分離活動,並且就其生命週期而言(Android是我理解它可以在消息交易中免費停止和恢復任何一方)。這樣可以更輕鬆地維護和修改活動,重用現有活動,並允許有效使用資源。
開發指南中的Application Fundamentals將意圖定義爲「異步消息」。爲了更好地理解它們與「消息」的區別,可以將它們與Microsoft Windows世界中的WM_COMMAND消息進行比較,因爲根據定義,它們應該啓動一個操作(而不是僅傳遞信息)。
簡單的現實世界的例子,根據我的理解, 發送郵件的傳統方式,即郵政服務,你有一封帶有發信人和收信人簽名的信函封面(封面和郵票可以認爲上下文 - 如果我沒有錯誤),並且裏面的實際字母可以被認爲是數據,郵遞員攜帶的全部字母(封面+實際字母數據)是意圖,郵遞員是OS:) 希望這給出一些想法。
- 1. 概念意義
- 2. Kotlin意圖的概念是什麼?
- 3. Android ImageView中有圖層的概念嗎?
- 4. Android webgl概念?
- 5. Android DownloadFilesTask概念
- 6. Android -Timer概念
- 7. android R.layout概念
- 8. 相當於Android使用鈦的iPhone共享意圖概念嗎?
- 9. 概念類圖
- 10. Android簽名概念
- 11. Android車輪概念
- 12. sqlite概念到coredata的概念?
- 13. 圖論:派概念
- 14. Android中OOP概念的示例
- 15. OAuth2.0的概念
- 16. Threading.Tasks:WaitAll的概念()
- 17. Postfix的概念
- 18. Android NFC概念驗證
- 19. Android概念幫助ListView
- 20. Android遊戲框架概念
- 21. 概念
- 22. 概念
- 23. 概念
- 24. Corona SDK中的「Throw」概念
- 25. 硒中的網格概念
- 26. HDFS中Hadoop塊的概念
- 27. C#3.0中的概念
- 28. C中的叉子概念#
- 29. SVN中包的概念
- 30. Aspectj在eclipse中的概念
它與事件類似,作爲一種簡化。 – 2010-04-07 01:47:28