Android: startActivityForResult () con funcionalidad de botón BACK

Me gustaría iniciar una nueva activity para un result , con startActvityForResult() , pero me gustaría tener el botón de back funcionando normalmente en la nueva actividad.

Actualmente cuando invoco una nueva Activity para el resultado, no ocurre nada cuando presiono el botón Atrás en la nueva Actividad.

He intentado algo como esto:

 @Override public void onBackPressed() { setResult(0); super.onBackPressed(); finish(); } 

En la nueva Actividad, pero no funcionó. Aún no ocurre nada cuando se pulsa el botón de retroceso.

¿Hay alguna forma de evitar esto?

EDIT: Podría por supuesto cargar la última Activity en el onBackPressed() (¿puedo?), Pero parece un hack bastante malo.

La respuesta de Alex Ady resuelve mi problema, pero todavía no entiendo por qué onBackPressed() no funciona. El código de trabajo ahora es algo como esto:

 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { setResult(1); finish(); } return super.onKeyDown(keyCode, event); } 

Podría usar una explicación.

Tu podrías intentar

 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { finish(); } return super.onKeyDown(keyCode, event); } 

No debería tener que anular el comportamiento del botón Atrás en absoluto. De forma predeterminada, si el usuario presiona el botón Atrás, el resultado será Activity.RESULT_CANCELED .

Intente deshacerse de la línea que contiene el acabado ().

  • Abra la aplicación para Android cuando la conexión a Internet esté activada, de lo contrario no mostrará ningún mensaje de conexión a Internet
  • Detección de lanzamientos de actividades de Android
  • Robotium. WaitForActivity () devuelve false para la actividad incrustada en TabHostActivity
  • ¿Cómo descodificar de manera fiable los códigos de barras PDF417 en Android usando software (no Zxing)?
  • Java.lang.RuntimeException: Sólo se puede crear un Looper por subproceso
  • No se puede implementar Parcelable porque no puedo hacer que el campo CREATOR esté estático
  • Cómo utilizar un certificado SSL auto-firmado en Android
  • Los caracteres especiales no se muestran en android
  • La barra de desplazamiento desaparece cuando se utiliza SectionIndexer en secciones específicas de HoneyComb
  • Adaptador de matriz de Android con ArrayList y ListView no se actualizan cuando se cambia el arraylist
  • Problemas al crear la aplicación GCM Demo Server
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.