我有一个private List<AnotherCustomObject> mList;
的自定义对象。请注意AnotherCustomObject
实现了Parcelable
。
但是,如果我想在mList
中将dest
写入writeToParcel()
,然后稍后再阅读,这是正确的方法:
dest.writeList(mList);
然后在read方法中
in.readList(mList, ClassLoader.getSystemClassLoader());
正确?
答案 0 :(得分:0)
请尝试使用必要的类加载器。
in.readList(mList, AnotherCustomObject.getClass().getClassLoader());
答案 1 :(得分:0)
您的List<AnotherCustomObject> mList
可以使用readTypedList(List<T> list, Creator<T> c)
方法阅读,并使用writeTypedList(List<T> val)
方法写入。
在writeToParcel
方法中,您可以编写以下内容:
dest.writeTypedList(mList);
然后在构造函数中创建一个Parcel
对象的实例,你可以放置:
in.readTypedList(mList, AnotherCustomObject.CREATOR);