Android:通过Parcelable

时间:2018-02-20 09:11:03

标签: java android

我试图通过 Android 中的activity对象将图像列表传递给另一个Parcelable。我可以将图像转换为byte[] array罚款。

但是,我已经获得了这些图片的列表,因此不止一个byte[] array

到目前为止,这是我的代码。

public class InvalidItem implements Parcelable {

public String id;

public ArrayList<byte[]> imageList = new ArrayList<>();

public InvalidItem(String id) {
    this.id = id;
}

public InvalidItem(Parcel in) {
    String[] data = new String[22];

    in.readStringArray(data);

    this.id= data[0];
    this.imageList = data[1];
}

@Override
public int describeContents() {
    return 0;
}

@Override
public void writeToParcel(Parcel dest, int flags) {
    dest.writeStringArray(new String[]{
            this.id,
            String.valueOf(this.imageList)
    });
}

public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
    public InvalidItem createFromParcel(Parcel in) {
        return new InvalidItem(in);
    }

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

正如您所看到的,我编写的字符串数组适用于一个byte[] array。有没有一种方法可以将byte[] arrays列表解析为一个字符串,然后在我想要显示图像时进行编码?

我已经尝试过寻找解决方案,人们建议将其传递到捆绑包中。

但是,此应用程序遵循一步一步的过程,并且需要一个对象来存储数据。

0 个答案:

没有答案