源码

首页 » 归档 » 源码 » android – 如何使用嵌套对象创建一个类Par…

android – 如何使用嵌套对象创建一个类Par…


我想让A级Parcelable.

public class A {
    public String str;
    public ArrayList list;
}

这是我到目前为止所提出的.但是它崩溃了NullPointerException.问题是这两个语句:dest.writeList(list); &安培; in.readList(list,this.getClass().getClassLoader());.
我无法弄清楚从这里做什么:(

A级

public class A implements Parcelable {
    public String str;
    public ArrayList list;

    @Override
    public int describeContents() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(str);
        dest.writeList(list);
    }

    private A(Parcel in) {
        str = in.readString();
        in.readList(list, this.getClass().getClassLoader());
    }

    public static final Parcelable.Creator CREATOR
            = new Parcelable.Creator() {
        public A createFromParcel(Parcel in) {
            return new A(in);
        }

        public A[] newArray(int size) {
            return new A[size];
        }
    };
}

B级

public class B implements Parcelable {
    public String str;

    @Override
    public int describeContents() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(str);
    }

    private B(Parcel in) {
        str = in.readString();
    }

    public static final Parcelable.Creator CREATOR
            = new Parcelable.Creator() {
        public B createFromParcel(Parcel in) {
            return new B(in);
        }

        public B[] newArray(int size) {
            return new B[size];
        }
    };
}

感谢您的时间.

(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/android-ruheshiyongqiantaoduixiangchuangjianyigeleipar.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:9月 26, 2019 at 09:15 下午

热评文章