1. 程式人生 > >利用Bundle實現Android Activity間訊息的傳遞

利用Bundle實現Android Activity間訊息的傳遞

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中據此做出不同的處理