欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Android之Intent】

程序员文章站 2022-06-13 15:19:10
...

Intent在Activity中的作用主要是有两个:

1、启动目标Activity

2、传递数据

Intent在传递数据时分两种情况:向下一个Activity传递数据和从下一个Activity返回数据。

 

 

Android中,Activity和Fragment之间传递对象,可以通过将对象序列化并存入Bundle或者Intent中进行传递,也可以将对象转化为JSON字符串,进行传递。序列化对象可以使用Java的Serializable的接口、Parcelable接口。转化成JSON字符串,可以使用Gson等库。

 

使用Serializable方法虽然十分简单,但是效率却不容乐观,因为它会把整个对象序列化,开销十分大,为了追求效率,我们不得不使用另一种方法,也就是Parcelable 方法。

 

 

自定义类实现Parcelable接口,这个时候必须重写两个方法

1.describeContents(): 用于描述内容接口,一般直接 return 0即可

2.writeToParcel() : 用于将想要传递的数据写入到Parcel容器中。

除了这两个方法以外,我们还需要创建一个 Parcelable.Creator接口的实现,这个接口中也需要我们实现两个方法

1.createFromParcel() : 用于将写入Parcel容器中的数据读出来,用读出来的数据实例化一个对象,并且返回。

2.newArray() :创建一个长度为 size 的数组并且返回,一般而言,直接返回return T[size] 即可。

 

相关标签: 【Android之Intent】