Quiero hacer algo simple en la aplicación de Android. ¿Cómo es posible volver a una actividad anterior?
¿Qué código necesito para volver a la actividad anterior?
Quiero hacer algo simple en la aplicación de Android. ¿Cómo es posible volver a una actividad anterior?
¿Qué código necesito para volver a la actividad anterior?
Respuestas:
Las actividades de Android se almacenan en la pila de actividades. Volver a una actividad previa podría significar dos cosas.
Abriste la nueva actividad desde otra actividad con startActivityForResult . En ese caso, simplemente puede llamar a la función finishActivity () desde su código y lo llevará de regreso a la actividad anterior.
Mantenga un registro de la pila de actividades. Siempre que comience una nueva actividad con una intención, puede especificar una marca de intención como
FLAG_ACTIVITY_REORDER_TO_FRONT
oFLAG_ACTIVITY_PREVIOUS_IS_TOP
. Puede usar esto para barajar entre las actividades en su aplicación. Sin embargo, no los he usado mucho. Echa un vistazo a las banderas aquí: http://developer.android.com/reference/android/content/Intent.htmlComo se menciona en los comentarios, si la actividad se abre con,
startActivity()
entonces se puede cerrar confinish()
. Si desea utilizar el botón Arriba, puede detectarlo en elonOptionsSelected(MenuItem item)
método de verificación de la ID del elemento enandroid.R.id.home
comparación conR.id.home
lo mencionado en los comentarios.fuente
Tratar
Activity#finish()
. Esto es más o menos lo que hace el botón Atrás de forma predeterminada.fuente
this.finish();
#
es un indicador quefinish()
es un método no estático de la clase Actividad. No es Java válido, pero ayuda a explicar cómo se puede usar el método..
, es decir:Activity.someStaticMethod()
Simplemente escriba en clic en terminar () . Te llevará a la Actividad anterior.
fuente
Sólo esta
fuente
Esto lo llevará a una actividad previa manteniendo su pila y borrando todas las actividades posteriores de la pila.
Por ejemplo, si la pila era A-> B-> C-> D y comienza B con esta bandera, la pila será A-> B
fuente
¿Desea tomar el control del comportamiento del botón Atrás? Puede anular el botón Atrás (para ir a una actividad específica) a través de uno de los dos métodos.
Para Android 1.6 y versiones inferiores:
O si solo es compatible con Android 2.0 o superior:
Para más detalles: http://android-developers.blogspot.com/2009/12/back-and-other-hard-keys-three-stories.html
fuente
Simplemente llame a este método para finalizar la actividad actual o para volver por onBackPressed
O
fuente
si quieres ir a solo quieres ir a la actividad anterior usa
O
si desea ir a la segunda actividad o debajo, use lo siguiente:
fuente
Agregue esto en su método onCLick (), volverá a su actividad anterior
o puedes usar esto. Funcionó perfectamente para mí
fuente
Si ha configurado correctamente el archivo AndroidManifest.xml con actividad principal, puede usar:
Donde esta es la actividad de su hijo.
fuente
Prueba esto es actuar ya que tienes que presionar el botón Atrás
fuente
Puede llamar explícitamente
onBackPressed
es la forma más fácil.Consulte Volver a la actividad anterior para más detalles.
fuente
Tengo el mismo problema y
funcionó bien para mí, ambos funcionaron igual, pero no tuve suerte con
return
fuente
Comience la segunda actividad con intención (ya sea de uso
startActivity
o destartActivityForResult
acuerdo con sus requisitos). Ahora, cuando el usuario presione el botón Atrás, la actividad actual en la parte superior se cerrará y se mostrará la anterior.Ahora digamos que tiene dos actividades, una para seleccionar algunas configuraciones para el usuario, como idioma, país, etc., y después de seleccionarla, el usuario hace clic en el botón Siguiente para ir al formulario de inicio de sesión (por ejemplo). Ahora, si el inicio de sesión no es exitoso, el usuario estará en la actividad de inicio de sesión, ¿qué sucede si el inicio de sesión es exitoso?
Si el inicio de sesión es exitoso, entonces debe comenzar otra actividad. Significa que se iniciará una tercera actividad, y aún hay dos actividades en ejecución. En este caso, será bueno usarlo
startActivityForResult
. Cuando el inicio de sesión sea exitoso, envíe datos OK nuevamente a la primera actividad y cierre la actividad de inicio de sesión. Ahora, cuando se reciben los datos, inicie la tercera actividad y cierre la primera actividad utilizando finalizar.fuente
Puedes probar esto:
fuente
Todas las actividades / intentos nuevos por defecto tienen un comportamiento anterior / anterior, a menos que haya codificado un
finish()
en la actividad de llamada.fuente
y si quieres hacer clic en el botón regresar, simplemente pon
fuente
Pruebe esto, funciona tanto en el botón de retroceso de la barra de herramientas como en el botón de retroceso de hardware .
fuente
Sugiero NavUtils.navigateUpFromSameTask (), es fácil y muy simple, puedes aprenderlo del desarrollador de Google. ¡Ojalá pudiera ayudarte!
fuente
Hay algunos casos para volver a su actividad anterior:
Caso 1: si desea volver a su actividad anterior, entonces ActivityA.java
FBHelperActivity.java
Caso 2: ActividadA -> FBHelperActivity ----> ActividadA
ActivityA.java
FBHelperActivity.java
fuente
Primero, lo que debe tener en cuenta es que, si desea volver a una actividad anterior. Entonces no llame al método finish () cuando vaya a otra actividad usando Intent.
Después de eso, tiene dos formas de retroceder de la actividad actual a la actividad anterior:
Simplemente llame:
finish()
debajo del botón haga clic en escucha, o anule el siguiente método para retroceder usando el botón de retroceso del sistema:fuente
Además de todas las respuestas mencionadas, sigue siendo una forma alternativa de hacerlo, digamos que tiene dos clases, clase A y clase B.
Clase A, ha realizado algunas actividades, como seleccionar la casilla de verificación, imprimir algunos datos e intentar la clase B. Clase B, le gustaría pasar varios valores a la clase A y mantener el estado anterior de la clase A, puede usar, pruebe esta alternativa método o descargue el código fuente para demostrar esto
http://whats-online.info/science-and-tutorials/125/Android-maintain-the-previous-state-of-activity-on-intent/
o
http://developer.android.com/reference/android/content/Intent.html
fuente
Solo intenta esto en la primera actividad
En tu segunda actividad
fuente