Android中的Parcelable序列化对象
16lz
2021-01-25
今天查阅资料,简单了解了一下Parcelable接口,它是android提供的序列化对象的接口,比java中的
Serializable高效些。通过这个接口序列化对象主要有两步:
1.实现public void writeToParcel(Parcel dest, int flags) {}方法;
2.实例化CREATOR
public static final Parcelable.CreatorCREATOR = new Parcelable.Creator () {@Overridepublic ParcelableImpl createFromParcel(Parcel source) {return new ParcelableImpl(source);}@Overridepublic 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();}@Overridepublic int describeContents() {return 0;}//将ParcelableImpl对象序列化为一个Parcel对象@Overridepublic void writeToParcel(Parcel dest, int flags) {dest.writeInt(num);}// CREATOR 必须大写,而且必须是“CREATOR”public static final Parcelable.CreatorCREATOR = new Parcelable.Creator () {//将Parcel对象发序列化为ParcelableImpl@Overridepublic ParcelableImpl createFromParcel(Parcel source) {return new ParcelableImpl(source);}@Overridepublic ParcelableImpl[] newArray(int size) {return new ParcelableImpl[size];}};}
更多相关文章
- ListView一些相关知识
- Android(安卓)添加系统服务
- Android(安卓)service启动流程分析.
- Android之基本组件
- Android(安卓)IPC 通讯机制源码分析
- Android(安卓)自定义ScrollView可监控滑动方向、滑动到底部
- 线程间通信----Handler
- android之硬件访问服务框架
- Android(安卓)代理拦截系统层代码