bundle及intent傳遞接收資料

2021-07-23 20:24:37 字數 1339 閱讀 7729

在兩個activity傳遞資料是我們通常都用intent來傳遞;

傳遞簡單資料型別時可以直接用inten.putextras();也可以吧引數放到bundle接著intent.putextras(bundle);

傳遞

intent intent = new intent();

intent.setclass(contactactivity.this, contactbacklistactivity.class);

intent.putextra(contactconfig.feed_id, feedid); /簡單資料(比如string,int)

intent.putstringarraylistextra(contactconfig.extra_normal_al_select_cardids, feedids); //傳遞陣列arraylistactivity.startactivity(intent);

接收

intent typeintent = getintent();

mfromfeedid = typeintent.getstringextra(contactconfig.feed_id);

mselectidlist = typeintent.getstringarraylistextra(contactconfig.extra_normal_al_select_cardids);

在兩個acitivty中間傳遞物件 ,那麼這個物件類就要implements serializable 或者 implements parcelable

下面是serializable 方式的傳遞和接收,parcelable也一樣,mbundle.putparcelable和 getintent().getparcelableextra

//傳遞

intent intent = new intent((contactactivity.this, contactbacklistactivity.class);

bundle mbundle = new bundle();

mbundle.putserializable("設定標記的key",物件bean); 或者 mbundle.putparcelable("設定標記的key",物件bean);

intent.putextras(mbundle);

startactivity(intent);

//接收

物件bean= (物件bean) getintent().getserializableextra("設定標記的key");

Bundle傳遞引數

bundle是在android中十分有用的一種類,我們通常用它來進行引數的傳遞。理解bundle可以把它當作乙個map,所以它的本質是乙個key value鍵值對。其中key值為乙個標識引數的string值,value即為該string對應的引數。使用bundle傳遞引數會在intent messa...

Intent 訊息傳遞

android為了遮蔽程序的概念,利用不同的元件 activity service 來表示程序之間的通訊!元件間通訊的核心機制是intent,通過intent可以開啟乙個activity或service,不論這個activity或service是屬於當前應用還是其它應用的!一 intent概念 in...

Intent傳遞物件

serializable即序列化,將物件轉化成可儲存與傳輸狀態。public class student implements serializable public string getid public void setname name public string getname public...