`

Intent传递复杂对象时Parcelable用法学习

 
阅读更多
Parcelable传递对象
http://www.apkbus.com/android-19356-1-1.html
Parcelable对象
import android.os.Parcel;
import android.os.Parcelable;

public class Person implements Parcelable
{

    private String Name = "anupama";
    private String Address = "India";
    private int Age = 30;
    
    @Override
    public int describeContents()
    {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flag)
    {
        // TODO Auto-generated method stub
        dest.writeString(Name);
        dest.writeString(Address);
        dest.writeInt(Age);
    }
    public Person(Parcel in)
    {
        this.Name = in.readString();
        this.Address = in.readString();
        this.Age = in.readInt();
    }

    @SuppressWarnings("unchecked")
    public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
        public Person createFromParcel(Parcel in)
        {
            return new Person(in);
        }

        public Person[] newArray(int size)
        {
            return new Person;
        }
    };
}


http://blog.163.com/eden_dahua/blog/static/18549828320114311210519/
http://blog.sina.com.cn/s/blog_4cdc44df0100xofl.html
http://hi.baidu.com/tyliang/blog/item/b42f2986e4128f36c75cc358.html
分享到:
评论

相关推荐

    Intent传递对象、对象数组

    本话题将详细探讨如何通过Intent传递对象以及对象数组。 一、Intent的基础 Intent主要由两部分构成:Action(动作)和Data(数据)。Action定义了Intent要执行的操作,如ACTION_VIEW、ACTION_SEND等;Data则包含了...

    Intent传递对象

    总之,当需要在Intent中传递复杂对象时,建议优先考虑Parcelable接口,尽管实现过程稍显繁琐,但其性能优势是显而易见的。而Serializable接口虽然简单,但在大数据量或高性能需求的场景下可能不是最佳选择。理解并...

    Android多进程通讯AIDL传递Parcelable对象

    总结,Android多进程通讯AIDL传递Parcelable对象是一种强大的技术,可以实现复杂的跨进程数据交换。正确理解和使用AIDL能够帮助开发者构建健壮的、具有扩展性的Android应用。在实际开发中,应结合具体需求选择合适的...

    Android Intent传递对象

    2. **使用Intent传递Serializable对象** 在发送Intent时,将对象添加到extras中: ```java CustomObject customObj = new CustomObject(); Intent intent = new Intent(this, TargetActivity.class); intent....

    intent传递自定义对象

    当我们需要在Intent中传递自定义对象时,Android提供了几种方式来实现这一功能,其中一种常用的方法是将自定义对象转换为Serializable接口的实现。以下我们将详细探讨如何通过Intent传递自定义对象以及涉及到的相关...

    【Intent传递】对象、数组

    1. Parcelable接口:这是Android系统提供的一个接口,实现了该接口的对象可以通过Intent传递。你需要实现writeToParcel()和describeContents()方法,将对象状态写入Parcel,然后在接收端通过_parcelableCreator创建...

    android Intent传递对象数据

    当我们需要传递复杂的数据结构,如自定义对象时,就需要利用`Serializable`或`Parcelable`接口来实现。下面将详细介绍这两种方法。 ### 1. `Serializable`接口 #### (1) 实现过程 首先,你需要让你的自定义对象...

    Android系列之Intent传递对象的几种实例方法

    在实际开发中,如果需要频繁地通过Intent传递对象,推荐使用`Parcelable`接口,以提高应用性能。然而,对于简单的数据模型或者不需要考虑性能的情况下,`Serializable`接口是一个更简单的选择。 总结起来,Android...

    android中Intent传递对象的两种方法(Serializable,Parcelable)

    当我们需要在Intent中传递复杂对象时,有两种主要的方法:Serializable和Parcelable。这两种方式都可以实现对象的序列化,但它们在性能和效率上存在差异。 **Serializable接口** Serializable接口是Java提供的一个...

    Intent传递对象Serializable

    在Android中,Intent的额外数据部分(extras)只能存储Parcelable或Serializable类型的对象,因此,当我们需要通过Intent传递自定义对象时,可以选择实现Serializable接口。 **步骤1:实现Serializable接口** 为了...

    实现Parcelable接口的方式借助Intent实现Android工程中Activity之间Java对象的传递.zip

    通常,我们使用Intent来在不同Activity之间传递数据,但当需要传递复杂对象时,如自定义的Java对象,就需要使用到Parcelable接口。这个压缩包文件"实现Parcelable接口的方式借助Intent实现Android工程中Activity之间...

    通过实现Parcelable接口跨进程传递复杂数据

    在Android系统中,当需要在不同的应用程序组件之间或者在服务之间传递复杂的数据对象时,普通的Serializable接口可能无法满足高效的需求,因为它的序列化和反序列化过程相对较慢。此时,可以采用更高效的Parcelable...

    Android 通过Intent使用Bundle传递对象详细介绍

    Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法。 被传递的对象需要先实现序列化,而序列化对象有两种方式:java.io.Serializable和android.os.Parcelable Java中...

    Inetent传递对象parcelable

    然而,当我们需要在Intent中传递复杂的自定义对象时,通常的做法并不像传递基本数据类型(如字符串、整数)那样直接。这时,我们可以利用Parcelable接口来实现对象的序列化和反序列化,以便通过Intent进行传递。本文...

    【Intent传递】对象、数组 DEMO

    - 对象必须是Parcelable或Serializable,否则无法通过Intent传递。 - 使用完Intent后,记得调用finish()方法关闭当前Activity,避免内存泄漏。 这个DEMO应该包含了一个可运行的项目,演示了如何通过Intent传递...

    Android通过Intent传递数据

    当需要传递复杂的自定义对象时,推荐实现`Parcelable`接口。尽管比`Serializable`更繁琐,但它的序列化和反序列化速度更快,效率更高。实现`writeToParcel(Parcel dest, int flags)`和`Creator<T>`的静态内部类是...

    Android 数据传递(Intent、Bundle、Serializable、Parcelable等)

    当Intent传递的数据量较小或不涉及复杂对象时,Intent是非常方便的选择。 2. **Bundle**: Bundle是一个键值对的数据结构,常作为Intent的附加数据容器。它可以存储更多的数据类型,包括基本类型、CharSequence、...

    android 传递对象

    当对象需要通过Intent传递时,可以使用Intent的putExtra()方法配合Parcelable接口的writeToParcel()方法,接收端再通过getParcelableExtra()来获取。这种方式适用于频繁的、性能要求高的数据交换。 2. Serializable...

Global site tag (gtag.js) - Google Analytics