閱讀64 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Parcelable在子類中實現的方法

轉自:https://stackoverflow.com/questions/4049627/parcelable-and-inheritance-in-android

public abstract class A implements Parcelable {
    private int a;

    protected A(int a) {
        this.a = a;
    }

    public void writeToParcel(Parcel out, int flags) {
        out.writeInt(a);
    }

    protected A(Parcel in) {
        a = in.readInt();
    }
}

public class B extends A {
    private int b;

    public B(int a, int b) {
        super(a);
        this.b = b;
    }

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

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

    public int describeContents() {
        return 0;
    }

    public void writeToParcel(Parcel out, int flags) {
        super.writeToParcel(out, flags);
        out.writeInt(b);
    }

    private B(Parcel in) {
        super(in);
        b = in.readInt();
    }
}


最後更新:2017-04-03 18:52:09

  上一篇:go Android Studio初探:不隻是一個簡單的IDE
  下一篇:go 使用SVN進行項目版本管理