Android intent傳遞自定義物件

2021-09-02 00:23:46 字數 838 閱讀 5602

serializable即序列化,將物件轉換成可儲存或可傳輸的狀態,序列化的物件可在網路傳輸或本地儲存,序列化的方法就是讓自定義物件實現serializable介面。

person person = new person();  

person.setname("tom");

person.setage(20);

intent intent = new intent(firstactivity.this, secondactivity.class);

intent.putextra("person_data", person);

startactivity(intent);

person person = (person) getintent().getserializableextra("person_data");
(在activityresult中,data已經是intent型別了,直接getserializableextra即可,不必再getintent)

常用序列化,簡單易用,parcelable不多說了。需要可以參考:

除了serializable 之外,使用parcelable 也可以實現相同的效果,不過不同於將物件進行序列化,parcelable 方式的實現原理是將乙個完整的物件進行分解,而分解後的每一部分都是intent 所支援的資料型別,這樣也就實現傳遞物件的功能了。

parcelable的效能要比serializable好,記憶體開銷小,一般用於記憶體間資料的傳輸。如activity間資料的傳輸。 

serializable主要用於物件資料的持久化以及網路間物件資料的傳輸。

Android Intent傳遞物件陣列

兩個activity之間需要傳乙個list。使用intent來傳遞即可。需要注意以下幾點 1 bean 要 implements serializable或者繼承parcelable,我這裡舉得例子是前者,2 list本身要指定成arraylist 3 傳值的activity端 i.putextra...

Android intent 傳遞list或者物件

方法一 如果單純的傳遞list或者list的話 就可以直接使用 intent.putstringarraylistextra name,value intent.putintegerarraylistextra name,value 方法二 如果傳遞的是list,可以把list強轉成serializ...

android intent 用法總結

給移動客服10086撥打 uri uri uri.parse tel 10086 intent intent new intent intent.action dial,uri startactivity intent 給10086傳送內容為 hello 的簡訊 uri uri uri.parse ...