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];
		}
	};
}

相关文章

  • 如何更改Dialog的标题与按钮颜色详解

    如何更改Dialog的标题与按钮颜色详解

    这篇文章主要给大家介绍了关于如何更改Dialog的标题与按钮颜色的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考借鉴,下面跟着小编来一起学习学习吧。
    2017-08-08
  • Android中backgroundDimEnabled的作用

    Android中backgroundDimEnabled的作用

    这篇文章主要介绍了Android中backgroundDimEnabled的作用的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下
    2017-10-10
  • Android实现随机生成验证码

    Android实现随机生成验证码

    在登录注册软件时,经常会要求填写随机验证码,这篇文章为大家详细主要介绍了Android实现随机生成验证码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Flutter 构建一个常用的页面框架

    Flutter 构建一个常用的页面框架

    大多数 App 中都会有底部导航栏,通过底部导航栏切换实现不同页面之间的切换。在Flutter 中提供了 BottomNavigationBar组件实现底部导航。本篇介绍通过 BottomNavigationBar和 IndexedStack构建最为常见的 App 页面框架。
    2021-05-05
  • Android Handler内存泄漏原因及解决方案

    Android Handler内存泄漏原因及解决方案

    这篇文章主要介绍了Android Handler内存泄漏原因及解决方案,帮助大家更好的理解和利用Android进行开发,感兴趣的朋友可以了解下
    2021-02-02
  • java创建线程的4种方式集合(最新整理)

    java创建线程的4种方式集合(最新整理)

    在Java中,创建线程有多种方式,每种方式都有其适用场景和优缺点,下面给大家分享java创建线程的4种方式,感兴趣的朋友一起看看吧
    2018-05-05
  • Android实现透明动画

    Android实现透明动画

    这篇文章主要为大家详细介绍了Android实现透明动画,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Android序列化接口Parcelable与Serializable接口对比

    Android序列化接口Parcelable与Serializable接口对比

    我们使用 Intent 传递数据的时候,putExtra() 所支持的数据类型事有限的,当需要传递自定义对象的时候就需要序列化。Serializable更简单但是会把整个对象进行序列化因此效率比Parcelable低一些
    2023-02-02
  • Android 属性动画ValueAnimator与插值器详解

    Android 属性动画ValueAnimator与插值器详解

    这篇文章主要介绍了Android 属性动画ValueAnimator与插值器详解的相关资料,需要的朋友可以参考下
    2017-05-05
  • Jenkins打包android应用时自动签名apk详解

    Jenkins打包android应用时自动签名apk详解

    这篇文章主要介绍了Jenkins打包android应用时自动签名apk详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07

最新评论