Parcelable接口

来源:互联网 发布:ubuntu14.04 软件源 编辑:程序博客网 时间:2024/06/03 13:15

1. Parcelable接口

Interface for classes whose instances can be written to
 and restored from a  Parcel.  Classes implementing the Parcelable
 interface must also have a static field called CREATOR, which
  is an object implementing the Parcelable.Creator Parcelable.Creator
  interface.


2.接口定义

public interface Parcelable { public static final int PARCELABLE_WRITE_RETURN_VALUE = 0x0001; public static final int CONTENTS_FILE_DESCRIPTOR = 0x0001; public int describeContents(); public void writeToParcel(Parcel dest, int flags); public interface Creator<T> {                public T createFromParcel(Parcel source);                       public T[] newArray(int size); } public interface ClassLoaderCreator<T> extends Creator<T> {  public T createFromParcel(Parcel source, ClassLoader loader);}}

3.接口实现例子

public class MyParcelable implements Parcelable {      private int mData;       public int describeContents() {          return 0;      }       public void writeToParcel(Parcel out, int flags) {          out.writeInt(mData);      }       public static final Parcelable.Creator<MyParcelable> CREATOR              = new Parcelable.Creator<MyParcelable>() {          public MyParcelable createFromParcel(Parcel in) {              return new MyParcelable(in);          }           public MyParcelable[] newArray(int size) {              return new MyParcelable[size];          }      };            private MyParcelable(Parcel in) {          mData = in.readInt();      }  }


0 0
原创粉丝点击