9
votes

Comment mettre en œuvre Parcelables pour une liste contenant une liste >?

J'ai un Emballable CODE> implémentation de tous les champs de ma classe de pièces par conditionnement à part Liste > code> xxx pré>

Exception: P>

05-10 19:07:44.072: E/AndroidRuntime(10661): Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@42a509e8: Unmarshalling unknown type code 3604535 at offset 268


0 commentaires

3 Réponses :


0
votes

Je créerais une classe qui étendait la liste, mettrez implémenter la contrat de conditionnement sur cette classe. Vous pouvez également le traiter comme une liste normale, mais laissez-le être contrattable.


0 commentaires

0
votes

Créer classement des éléments de classement conditionnel qui contient Liste et utilisez la liste Détails dans Employé >.


0 commentaires

8
votes

Extension de ArrayList Code> et implémentation Concairable code> sur celui-ci a fonctionné pour moi. xxx pré>

et classe d'employé p>

class Employee implements Parcelable {

    List<ParcelableArrayList> details;
    //.......

    protected Employee(Parcel in) {
        details = new ArrayList<ParcelableArrayList>();
        in.readTypedList(details,ParcelableArrayList.CREATOR);
        //......
    }

    public void writeToParcel(Parcel dest, int flags) {
        dest.writeList(details);
        //.....
    }

    public int describeContents() {
        return 0;
    }

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

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

}


0 commentaires