Android中的Parcelable序列化对象
更新时间:2016年01月16日 12:27:31 投稿:mdxy-dxy
这篇文章主要介绍了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];
}
};
}
相关文章
Android中backgroundDimEnabled的作用
这篇文章主要介绍了Android中backgroundDimEnabled的作用的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下2017-10-10
Android序列化接口Parcelable与Serializable接口对比
我们使用 Intent 传递数据的时候,putExtra() 所支持的数据类型事有限的,当需要传递自定义对象的时候就需要序列化。Serializable更简单但是会把整个对象进行序列化因此效率比Parcelable低一些2023-02-02
Android 属性动画ValueAnimator与插值器详解
这篇文章主要介绍了Android 属性动画ValueAnimator与插值器详解的相关资料,需要的朋友可以参考下2017-05-05


最新评论