0

I have this parcelable class:

public class EventInviteWorkingHours implements Parcelable {

    int dayOfWeek;
    String begin;
    String finish;

    public EventInviteWorkingHours() {

    }

    protected EventInviteWorkingHours(Parcel in) {
        dayOfWeek = in.readInt();
        begin = in.readString();
        finish = in.readString();
    }

    public static final Creator<EventInviteWorkingHours> CREATOR = new Creator<EventInviteWorkingHours>() {
        @Override
        public EventInviteWorkingHours createFromParcel(Parcel in) {
            return new EventInviteWorkingHours(in);
        }

        @Override
        public EventInviteWorkingHours[] newArray(int size) {
            return new EventInviteWorkingHours[size];
        }
    };

    public int getDayOfWeek() {
        return dayOfWeek;
    }

    public void setDayOfWeek(int dayOfWeek) {
        this.dayOfWeek = dayOfWeek;
    }

    public String getBegin() {
        return begin;
    }

    public void setBegin(String begin) {
        this.begin = begin;
    }

    public String getFinish() {
        return finish;
    }

    public void setFinish(String finish) {
        this.finish = finish;
    }

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

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeInt(dayOfWeek);
        dest.writeString(begin);
        dest.writeString(finish);
    }
}

and in another class that implements parcelable and has this variable: List<EventInviteWorkingHours> workingHours;

i write and read this variable like that:

dest.writeTypedList(workingHours);

in.readTypedList(workingHours, EventInviteWorkingHours.CREATOR);

But, when I get the item by intent that contains this variable, this error appears:

java.lang.RuntimeException: Parcel android.os.Parcel@d7fbbfb: Clearing the unknown type code 7274612 at offset 788

Somebody knows how to fix it? I already have tried with ArrayList and write and read for differents ways, but never works

1 Answers1

0

I haven`t find any solution with parcelable, but i used serializable and it works very well:

The first parcelable class is now serializable class:

public class EventInviteWorkingHours implements Serializable {

    int dayOfWeek;
    String begin;
    String finish;

    public EventInviteWorkingHours() {

    }

    public int getDayOfWeek() {
        return dayOfWeek;
    }

    public void setDayOfWeek(int dayOfWeek) {
        this.dayOfWeek = dayOfWeek;
    }

    public String getBegin() {
        return begin;
    }

    public void setBegin(String begin) {
        this.begin = begin;
    }

    public String getFinish() {
        return finish;
    }

    public void setFinish(String finish) {
        this.finish = finish;
    }
}

And in another class that implements parcelable and has this variable: List<EventInviteWorkingHours> workingHours;

Will read and write that variable like that:

workingHours = (List<EventInviteWorkingHours>) in.readSerializable();


dest.writeSerializable((Serializable) workingHours);