·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> Android开发 >> Android中的Parcelable序列化对象

Android中的Parcelable序列化对象

作者:佚名      Android开发编辑:admin      更新时间:2022-07-23

今天查阅资料,简单了解了一下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];
		}
	};
}