使用Android中的Parcelable序列化对象

    今天查阅资料,简单了解了一下Parcelable接口,它是android提供的序列化对象的接口,比java中的  

    Serializable高效些。通过这个接口序列化对象主要有两步:

    1.实现public void writeToParcel(Parcel dest, int flags) {}方法;

    2.实例化CREATOR 

	public static final Parcelable.Creator<ParcelableImpl> CREATOR = new Parcelable.Creator<ParcelableImpl>() {

		@Override
		public ParcelableImpl createFromParcel(Parcel source) {

			return new ParcelableImpl(source);
		}

		@Override
		public ParcelableImpl[] newArray(int size) {

			return new ParcelableImpl[size];
		}
	};

   详细说明参照如下代码:

import android.os.Parcel;
import android.os.Parcelable;

public class ParcelableImpl implements Parcelable {

	private int num;

	ParcelableImpl(Parcel in) {
		num = in.readInt();
	}

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

	//将ParcelableImpl对象序列化为一个Parcel对象
	@Override
	public void writeToParcel(Parcel dest, int flags) {
		dest.writeInt(num);
	}

	// CREATOR 必须大写,而且必须是“CREATOR”
	public static final Parcelable.Creator<ParcelableImpl> CREATOR = new Parcelable.Creator<ParcelableImpl>() {

		//将Parcel对象发序列化为ParcelableImpl
		@Override
		public ParcelableImpl createFromParcel(Parcel source) {
			return new ParcelableImpl(source);
		}

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

猜你喜欢

转载自coderlxl201209164551.iteye.com/blog/2068683