Android Parcelable – Escriba y lea ArrayList <IA> cuando IA es una interfaz

Tengo una interfaz IA y clase B y C que los implementan. Tanto B como C implementan Parcelable también.

Entonces tengo la parte difícil:

La clase D tiene una ArrayList< IA > . Necesito esto también insertar las clases B y C en el arraylist . Comparten la misma estructura pero la relación "IS-A" no se aplica.

Necesito pasar de una actividad a otra como paquete.

He intentado escribir (ArrayList<IA>) in.readSerializable pero tengo una IOException . Sé que si IA no era una interfaz el problema era fácil, pero no puedo encontrar una solución fácil para esto.

¿Algunas ideas?

 @SuppressWarnings("unchecked") public D (Parcel in) { list = new ArrayList<IA>(); (...) list = (ArrayList<IA>) in.readSerializable } @SuppressWarnings("rawtypes") public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { public D createFromParcel(Parcel in) { return new D(in); } public D[] newArray(int size) { return new D[size]; } }; public int describeContents() { return 0; } public void writeToParcel(Parcel dest, int flags) { (...) dest.writeList(list); } 

  @SuppressWarnings("unchecked") public D (Parcel in) { list = new ArrayList<IA>(); (...) //ERROR -> list = (ArrayList<IA>) in.readSerializable list = in.readArrayList(IA.class.getClassLoader()); } @SuppressWarnings("rawtypes") public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { public D createFromParcel(Parcel in) { return new D(in); } public D[] newArray(int size) { return new D[size]; } }; public int describeContents() { return 0; } public void writeToParcel(Parcel dest, int flags) { (...) dest.writeList(list); } 
  • Cómo utilizar writeStringArray () y readStringArray () en una parcela
  • Es parcelable vale la pena implementar para pasar datos entre las actividades?
  • ¿Cómo enviar un objeto de una actividad a otra con Intent.putExtra y Parcel?
  • Android: Cualquier acceso directo a Serializable de Parcelable sin usar marshall ()?
  • Android, ¿Cómo usar el método readTypedList correctamente en una clase Parcelable?
  • Códigos de tipo de desbloqueo y valor de compensación y su significado?
  • GetParcelableArrayList devuelve null
  • No se puede poner más en una intención
  • ¿Cómo puedo pasar un objeto Bitmap de una actividad a otra?
  • Cómo hacer una clase interna Parcelable
  • Pase la matriz 2D a otra actividad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.