安卓里的序列化接口有两个,Serializable和Parcelable。前者使用非常简单,只需要实现该接口,后者还需要实现几个接口里的方法等。
在通过intent传递一个对象的时候,我通常让该对象类实现Serialazable,然后用bundle.putSerializable就可以了。但是要传递一个对象数组的时候,我发现bundle并没有putSerializableArray或putSerializableArrayList,而是有putParcelableArray和putParcelableArrayList,也就是说,想传递对象数组就要让对象类实现Parcelable接口。
以我的一个数据类为例:
public class AtItem implements Parcelable{
private String id,nickName,userTitle,signature;
1.首先要实现该接口的两个方法:
describeCount:内容描述,没什么用,默认返回0即可。
writeToParcel: 序列化,将对象的字段写入一个Parcel对象。也就是对象-->Parcel
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writ