利用Bundle實現Android Activity間訊息的傳遞
阿新 • • 發佈:2019-01-05
Activity間的通訊是通過Intent類。 比如有兩個類A.class, B.class
- 由A啟動新的activity B(單向),當B退出的時候A將不會接收到任何資訊:
- 由A啟動新的actvity B(雙向),當B退出的時候A的onActivityForResult方法將會被呼叫給定的requestCode。
A.class新增程式碼:
B.class新增程式碼
把值傳回 A.class
利用Bundle是一種比較方便的辦法。
程式的效果是活動A向B跳轉的同時傳送一字串,B讀出字串。
先在AndroidManifest.xml中定義一個新的Activity名稱為:target
Xml程式碼
第一個活動的程式碼如下:
將要跳轉到的活動程式碼:
如果要從Target往TestBundle回傳資料/資訊, 可以在TestBundle裡面:
然後在Target裡面, 回傳的時候:
在TestBundle裡出來傳回來的資料/資訊:
還有個東西需要留意的就是requestCode 它是作為標識此次intent出現的,他可以設定為任何你想要的int值,從而在onActivityResult中據此做出不同的處理