你好,我需要从一个活动发送列表到另一个,我发现方法在包裹 readTypedList发送列表位的AMD写TypedList 我writethem像在parcelable
parcel.writeTypedList(busImages);
,并尝试像
调用 in.readTypedList(busImages,Bitmap.Creator);
但在第二个参数Bitmap.Creator中有错误,我需要创建自己的创建者还是如何解决这个问题? 类代码:
public class ExtendBusModel extends BusModelParcelable {
private List<Bitmap> busImages;
private String Country;
public ExtendBusModel(BusModelParcelable model, List<Bitmap> busImages, String country) {
super(model, model.getCountOfPlaces(),model.getTransportClass());
this.busImages = busImages;
Country = country;
}
protected ExtendBusModel(Parcel in) {
super(in);
Log.d("read parsel buses", TestTags.TAG1);
// in.readList(busImages,List.class.getClassLoader());
in.readTypedList(busImages,Bitmap.Creator);
Log.d("read parcel coutry",TestTags.TAG1);
Country = in.readString();
Log.d("done read",TestTags.TAG1);
// super(in);
}
@Override
public void writeToParcel(Parcel parcel, int i) {
super.writeToParcel(parcel, i);
//parcel.writeList(busImages);
parcel.writeTypedList(busImages);
parcel.writeString(Country);
}
public static final Creator<ExtendBusModel> CREATOR = new Creator<ExtendBusModel>() {
@Override
public ExtendBusModel createFromParcel(Parcel in) {
return new ExtendBusModel(in);
}
@Override
public ExtendBusModel[] newArray(int size) {
return new ExtendBusModel[size];
}
};
public List<Bitmap> getBusImages() {
if(busImages == null)
return new ArrayList<Bitmap>();
return busImages;
}
public void setBusImages(List<Bitmap> busImages) {
this.busImages = busImages;
}
public String getCountry() {
return Country;
}
public void setCountry(String country) {
Country = country;
}
}
请发布完整的课程代码,它实现了'Parcalable'。 –
@HamidShatu我贴吧 – Abbath
@Clay位图对象 – Abbath