Estoy escribiendo una aplicación que tendrá dos actividades, cuando el usuario presione el botón Atrás en la segunda actividad, aparecerá un cuadro de diálogo solicitando al usuario que confirme la acción. Entonces, ¿cómo puedo interceptar esto? Tengo serias dudas acerca de esto porque el backstack es una parte del sistema operativo en sí. ¿Alguien encontró una solución alternativa?Interceptar el botón Atrás
Respuesta
En una actividad que sólo puede anular
onBackPressed()
edición: que es lvl API 5+:/a 4 y por debajo de lo que tienes que anular onKeyDown()
Bien, gracias @schwiz –
Simplemente anule el método onKeyDown en su actividad y busque el botón Atrás. Devuelve verdadero para que el evento se consuma.
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//Do something here
return true;
}
return super.onKeyDown(keyCode, event);
}
+1, he hecho esto antes y definitivamente funciona, aunque cuando lo usé, era antes de entender la noción de actividades múltiples ... –
// Haz algo aquí (estoy tratando de mostrar un brindis por mi código de prueba) no funciona para mí. Y cuando presiono el botón Atrás, no pasa nada. –
Mi error, no llamé a Toast.show(). Código de trabajo. Gracias @skorulis –
Como señaló schwiz, querrás anular el método onBackPressed()
en tu clase de actividad (http://developer.android.com/reference/android/app/Activity.html#onBackPressed()).
Solo quería agregar que si deseaba en algún momento continuar o acceder a la operación de respaldo estándar (después de decir, mostrar un cuadro de diálogo), simplemente llame al super.onBackPressed()
o ActivityName.super.onBackPressed()
desde cualquier parte de la Actividad.
- 1. ¿Se puede interceptar las solicitudes NSURL en un UIWebView sin romper el botón Atrás?
- 2. Android - Simular el botón Atrás
- 3. Mobile Safari botón Atrás
- 4. Deshabilitar el botón Atrás en el navegador
- 5. IFrame Botón Atrás
- 6. GWT botón Atrás navegador
- 7. jQuery Mobile - botón Atrás
- 8. El botón de navegación hacia atrás no se muestra, cómo agregar el botón Atrás a UINavigationItem
- 9. ASP.net simular el botón Atrás del navegador
- 10. Android: Cómo simular el botón Atrás
- 11. PJAX: Problemas con el botón Atrás
- 12. Cómo atrapar el evento del botón Atrás
- 13. cómo desactivar el botón Atrás en Android
- 14. Personalizar el botón Atrás para UIImagePickerController?
- 15. ActionBarSherlock ¿Cambia el color del botón Atrás?
- 16. El botón Atrás de UINavigationController desaparece?
- 17. iOS cómo quitar el botón Atrás?
- 18. JSF commandLink, POSTing y el botón Atrás
- 19. Historial de página - ¿Existe el botón Atrás?
- 20. iphone - UIBarButtonItem personalizado para el botón Atrás
- 21. android: botón de volumen anulado ha afectado el botón Atrás?
- 22. Phonegap Android Botón Atrás - cerrar la aplicación con el botón Atrás en la página principal
- 23. Cómo manejar el botón Atrás en Windows Phone 7
- 24. Botón Atrás personalizado en UINavigationController
- 25. Botón Atrás (Comportamiento del navegador)
- 26. tipo de entrada - botón Atrás?
- 27. Anular botón Atrás de Android
- 28. Botón Atrás y última actividad
- 29. Anular botón Atrás en Android
- 30. Interceptar el botón Menú de Android en una ventana emergente
Piensa bien acerca de cómo hacer esto. Este es un comportamiento de Android no estándar y puede molestar a sus usuarios. ¿Estás tratando de evitar que pierdan datos no guardados? – I82Much
Sí exactamente @ I82Much! –