viernes, 18 de julio de 2014

Pasar un objeto entre actividades Android. Interfaz Parcelable

Para pasar un objeto definido por nosotros entre las actividades de nuestra aplicación, vamos a seguir los mismos pasos que el caso de pasar una variable del tipo básico, String, Enteros, Boleanos…

La única diferencia es que nuestro objeto debe implementar la interfaz Parcelable.

Supongamos que creamos una clase Usuario y que en nuestra aplicación es necesario pasar una instancia de este objeto entre las actividades. Nuestra clase Usuario sería la siguiente (Omito constructores, getters, setters y demás métodos para que se vea claro el ejemplo).

public class Usuario {
       private String mail;
       private String nombre;
       private int edad;
       private ArrayList<Usuario> amigos;      
}

Bien, pues para que nuestro objeto del tipo Usuario se pueda pasar mediante un Intent, es necesario que implemente la interfaz Parcelable, como se ve a continuación.

sábado, 5 de julio de 2014

Comunicación entre actividades Android

Muchas veces cuando estamos realizando nuestra aplicación Android y tenemos varias actividades, es necesario que estas se comuniquen entre sí, es decir, necesitamos pasar información de una actividad a otra.
Para realizar esta comunicación, en la actividad origen tenemos que crear un objeto Intent y a este le añadimos las variables u objetos que queremos pasar a la actividad destino.

Intent intent = new Intent(MainActivity.this, ActividadDestino.class);
   intent.putExtra("nombre", “empezandoenesto”);   
   intent.putExtra("edad", 35);     
   startActivity(intent);

El código anterior como veis es muy simple e intuitivo.

En el constructor del objeto Intent simplemente le pasamos el contexto de la actividad origen MainActivity.this y la actividad que queremos lanzar ActividadDestino.class (fijaros que le pasamos el *.class)