android中的activity和startActivityForResult詳細分析

fmms 12年前發布 | 45K 次閱讀 Android Android開發 移動開發

1. 概述:Activity作為公共類,繼承自ContextThemeWrapper.

Activity專注于用戶所要做的事情。幾乎所有的Activity都是和用戶進行交互的。因此,Activity通過使用setContentView(view)來展示界面元素。盡管Activities通常是全屏顯示窗口的,但是你可以指定下面兩種方法的一種來進行顯示:

浮動窗體:android:theme="?android:attr/windowIsFloating"

嵌入到其他的Activity中。

2.startActivity(Intent)和startActivityForResult(Intent,int)的區別使用:

startActivity(Intent) 方法可以用來啟動一個新的 activity ,這個 activity 將被放置在 activity 棧的棧頂。這個方法只有一個參數 Intent ,這個參數描述了將被執行的 activity 。
      有時候你希望在一個 activity 結束時得到它返回的結果。舉個例子,你可能啟動一個 activity 來讓用戶從通訊簿中選擇一個人;當它結束的時候將會返回這個所選擇的人。為了得到這個返回的信息,你可以使用 startSubActivity(Intent, int) 這個方法來啟動新的 activity ,第二個整形參數將會作為這次調用的識別標記。這個 activity 返回的結果你可以通過 onActivityResult(int, int, String, Bundle) 方法來獲得,此方法的第一個參數就是之前調用所使用的識別標記。
      當 activity 退出的時候,它可以調用 setResult(int) 來將數據返回給他的父進程。這個方法必須提供一個結果碼,這個結果碼可以使標準結果 RESULT_CANCELED, RESULT_OK ,也可以是其他任何從 RESULT_FIRST_USER 開始的自定義值。此外,它還可以返回一段字符串(經常是一段數據的 URL 地址),一個包含它所有希望值的 Bundle 。這些信息都會在父 activity 的回調函數 Activity.onActivityResult() 中出現,并連同最初提供的識別標記一起(此處有些拗口,意思其實就是子activity 返回的內容、返回碼、識別標記都將作為參數,按照不同的返回情況來調用父activity 的Activity.onActivityResult() 方法,以實現出現各種返回時父activity 做出響應的處理)。

轉自:http://blog.csdn.net/ltl451011/article/details/7282729

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!