2010-07-11 18 views
5

Tengo un ListView personalizado que usa un ArrayAdapter personalizado (que básicamente anula getView()). Este adaptador personalizado utiliza como servidor un List<CustomObject>. Los elementos en este List se recuperan de la red, por lo que me gustaría guardarlo en onSaveInstanceState(). Sin embargo, no puedo encontrar una forma de poner un List<E> en un Bundle. Estoy pensando que esta es una tarea común, guardar una matriz personalizada en el estado de la instancia. ¿Cómo lo hacen otras personas?¿Guardar un estado de instancia personalizado de ListView?

Respuesta

1

No puede serializar un List<E>, necesita transformarlo en un Array y usarlo cuando pase un objeto serializado. Luego lea la matriz y transfórmela en una lista. Ver estas preguntas, se trata de sortedset serializationE también debe ser serializable.

Mira en .toArray o bien putStringArrayputStringArrayList

+0

Gracias por su respuesta, que me guió a la dirección correcta. Terminé lanzando mi lista a ArrayList, que es serializable y funciona perfectamente. Probablemente hubieras sugerido lo mismo si hubiera mencionado que mi 'List ' está realmente instanciada como 'ArrayList ', pero desafortunadamente no lo hice. – Felix

Cuestiones relacionadas