Como reiniciar una Activity

21 septiembre, 2011 por Gonzalo de Córdoba Dejar una respuesta »

Objetivo:

Forzar el reinicio de una Activity en un momento determinado.

En alguna ocasión podemos deseear que una Activity reinicie sus valores, comenzando por ejecutarse por el método onCreate, según el ciclo de vida de una aplicación Android.

Para ello usaremos una función simple  en Java, de forma que la llamaremos en el momento deseado. Sólo tendríamos que colocar una función dentro de nuestra Activity que necesitemos reinciar:

Código fuente java:

//reinicia una Activity
public static void reiniciarActivity(Activity actividad){
        Intent intent=new Intent();
        intent.setClass(actividad, actividad.getClass());
        //llamamos a la actividad
        actividad.startActivity(intent);
        //finalizamos la actividad actual
        actividad.finish();
}

Y haremos la llamada en el momento que queramos reinciar la Activity:

//...
reiniciarActivity(this);
//..
Publicidad

4 comentarios

  1. Manu32 dice:

    Me sirvio gracias!

  2. gentleman dice:

    Como podria poner la llamada al reinicio desde un boton?

  3. Buenas Gentleman,
    para reinciar desde un botón, simplemente haz la llamada “reiniciarActivity(this);” dentro de la función que se ejecuta cuando pulsas el botón.

    Por ejemplo, imagina que tenemos el código del ejemplo:
    http://www.tutorialandroid.com/basico/como-programar-mensajes-de-alerta-alert-dialog/
    y deseas reiniciar la activity al pulsar el botón “Mostrar Toast”, pues fijándote en el XML verás que dicho botón tiene android:onClick=”onClicK_Toast”, asi que nos vamos al código Java y dentro de la función “onClicK_Toast” es donde pondremos la línea “reiniciarActivity(this);”
    Un saludo!

  4. Fahed dice:

    Hola man…me parecio muy bueno.Pero tengo un problemilla, tengo mi class activty esta dentro de un class TabActivity , si reinicio mi class activity solo puedo reiniciar desde donde estoy y no lo del TabActivity….graxias por adelantado, si pudieras ayudarme seria exelente …saludos…

Deja un comentario

Rellena el captcha please!! *

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies