从 Parcelable class 读写 java.util.ArrayList

Reading and writing java.util.ArrayList from Parcelable class

我正在使用 Parcelable class 将 Object 从一个 activity 发送到另一个 activity in Android Java.

Parcelable 只为我 String 数据实现。

如何从这个 class 读取和写入 productsArrayListstatus

public class Bill implements Parcelable {
    private String id;
    private Date createAt;
    private ArrayList<Products> productsArrayList;
    private ArrayList<StatusBill> status;

    public Bill(String id, Date createAt, ArrayList<Products> productsArrayList, ArrayList<StatusBill> status) {
        this.id = id;
        this.createAt = createAt;
        this.productsArrayList = productsArrayList;
        this.status = status;
    }

    protected Bill(Parcel in) {
        id = in.readString();
        createAt = new Date(in.readLong());
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(id);
        dest.writeLong(createAt.getTime());
    }
    public static final Creator<Bill> CREATOR = new Creator<Bill>() {
        @Override
        public Bill createFromParcel(Parcel in) {
            return new Bill(in);
        }

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

我在使用 Parcelable class

时找到了适用于所有情况的解决方案

本网站帮你实现Customclass到Parcelableclass

将您的 Custom class 粘贴到文本区域,然后单击 Build 按钮。

您将收到您的 Custom class 饰品 Parcelable class

http://www.parcelabler.com/