jueves, 16 de mayo de 2013

Navegar entre Actividades

En Android tenemos el concepto de Actividad (activity) que es una unidad de interacción con el usuario, es decir lo que podríamos decir que viene a ser una pantalla de una aplicación.

A continuación veremos como navegar entre dos actividades o pantallas.

Lo primero de todo será crear los componentes a los que vamos a navegar:

  • Clase descendiente de Activity
  • Layout que representará la nueva  pantalla
  • Definir en el fichero Manifest de la aplicación la nueva actividad
  • Realizar la invocación a la nueva actividad

Clase descendiente de Activity:

En principio una clase que herede de Activity y sobreescriba el método onCreate() para establecer cual es la vista debería ser suficiente.

public class Activity2 extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.layout2);
}
}

Layout:
El xml del layout puede contener cualquier componente que queráis. El nombre del layout para que concuerde con lo configurado en la actividad deberá ser layout2.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="74dp"
android:layout_marginTop="82dp"
android:text="@string/hello_world"
android:textColor="#00FF00"
android:textSize="23sp" />

</RelativeLayout>

Configurar fichero Manifest:
Deberemos incluir la definición de la siguiente manera dentro del nodo <application>

<activity android:name="Activity2" android:label="Actividad de prueba"/>
Realizar Invocación a la actividad
Desde la actividad origen deberemos ejecutar la nueva actividad de la siguiente forma:


public void lanzarNuevaActividad(View view){
      Intent i = new Intent(this, Activity2.class);
      startActivity(i);
}


Para que este código se ejecute deberemos llamarlo por ejemplo desde el evento onClick de un botón de la actividad origen:

android:onClick="lanzarNuevaActividad"
En la siguiente entrada veremos como pasar parámetros a la actividad destino.



No hay comentarios:

Publicar un comentario