android activity之间传递对象集合

第一步:把实体类实现Parcelable接口。
public class TestBean implements Parcelable{
private int num;
private String s;
private long l;
public int getNum() {
    return num;
}
public void setSk(int num) {
    this.num= num;
}
public String getS() {
    return s;
}
public void setS(String s) {
    this.s= s;
}
public long getL() {
    return l;
}
public void setL(long l) {
    this.l= l;
}
@Override
public int describeContents() {
    return 0;
}

@Override
public void writeToParcel(Parcel dest, int flags) {
    dest.writeInt(num);
    dest.writeString(s);
    dest.writeLong(l);
}

public static final Creator CREATOR = new Creator() {
    @Override
    public TestBean createFromParcel(Parcel source) {
        TestBean testBean = new TestBean();
        testBean.num= source.readInt();
        testBean.s= source.readString();
        testBean.l= source.readLong();
        return testBean;
    }

    @Override
    public TestBean[] newArray(int size) {
        return new TestBean[size];
    }
 };  
}

第二步:传递

ArrayList testBeanList;//要传递的对象集合
Intent intent = new Intent(ActivityA.this, ActivityB.class);
intent.putParcelableArrayListExtra("dataList", testBeanList);

第三步:接收

ArrayList testBeanList= getIntent().getParcelableArrayListExtra("dataList");

以上就是通过实现Parcelable接口传递对象集合的一种方法,还有实现Serializable接口传递的方法。

通过实现Serializable接口传递的方法会有警告。

 

你可能感兴趣的:(笔记)