Este es el códigono puede pasar un ArrayList <Parcelable> a una actividad
ArrayList<MyObject> list = new ArrayList<MyObject>();
list.add(new MyObject());
Intent intent = new Intent(this, ReceiverActivity.class);
intent.putExtra("list", list);
startActivity(intent);
ReceiverActivity
List<MyObject> list = (List<MyObject>)getIntent().getExtras().getParcelable("list");
Aquí lista es nula. Además, esto no funciona:
List<MyObject> list = (List<MyObject>)getIntent().getExtras().getSerializable("list");
MyObject es Parcelable, implementé todos los métodos necesarios. Supongo que esta implementación no es el problema, porque de lo contrario recibiría otro tipo de excepciones. Pero no obtengo nada además de que la lista es nula.
Gracias de antemano ...
Ahora me encontré con esto:
List<Parcelable> list = (List<Parcelable>)getIntent().getParcelableArrayListExtra("list");
que tiene que ser utilizado en la actividad del receptor, pero ¿cómo lo envío y cómo consigo List<MyObject>
de List<Parcelable>
?
El método getParcelableArrayListExtra me da ArrayList ¿Cómo consigo ArrayList ? Parece que tengo que lanzar los elementos o crear una nueva copia con ArrayList ? –
Ixx
sus objetos deben implementar Parcelable. Entonces deberían hacerlo bien – Akhil
No es posible emitirlos porque están en una lista y los genéricos no son covariantes. – Ixx