¿Cómo manejar el botón Atrás en el diálogo?

Estoy desarrollando una aplicación que cuando se pulsa el botón, abre un diálogo con los botones Aceptar y Cancelar.

Funciona bien.

Cuando el usuario presiona el botón de retroceso, estoy manejando esto como sigue

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

Pero el método anterior no se llama. ¿Cómo puedo manejar esto?

 dialog.setOnKeyListener(new Dialog.OnKeyListener() { @Override public boolean onKey(DialogInterface arg0, int keyCode, KeyEvent event) { // TODO Auto-generated method stub if (keyCode == KeyEvent.KEYCODE_BACK) { finish(); dialog.dismiss(); } return true; } }); 

Parece que desea establecer OnCancelListener cuando crea el cuadro de diálogo. Se parece a esto:

 dialog.setOnCancelListener(new DialogInterface.OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { //do whatever you want the back key to do } }); 

OnCancel anular el método OnCancel . Este método llama a presionar tecla Atrás. Aquí está el código que funciona perfecto para mí.

  AlertDialog alertDialog; alertDialog.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { // TODO Auto-generated method stub dialog.dismiss(); } }); 

Esperamos que esto le ayude, y lo acepte si es útil para usted.

Gracias..

Prueba esto

  new AlertDialog.Builder(this).setOnKeyListener(new DialogInterface.OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK){ Logger.d(TAG, "--------- Do Something -----------"); return true; } return false; } }) 

Es porque cuando su diálogo se abre entonces su ventana navegar su enfocado a Diálogo. Así que ahora usted tiene que manejar la key en su cuadro de diálogo.

  • Android - Cómo implementar un listbox como un diálogo modal / popup
  • Android - Ejecutar un listview personalizado en un cuadro de diálogo personalizado correctamente
  • Mantener la actividad siempre en la parte superior de la pila, o en el foco cuando las aplicaciones desleales lanzar las actividades?
  • Configurar el tamaño del cuadro de diálogo mediante programación
  • Dialog con gravedad inferior anima sobre la barra de navegación por encima de api kitkat?
  • Iconos en un diálogo de lista
  • Barra de botones inferior de Android y vista de desplazamiento con tema de diálogo
  • Android Image Dialog / Popup mismo tamaño que la imagen y sin frontera
  • Cuadro de diálogo de comprobación de Android (Fácil)
  • ¿Es posible crear listview dentro de diálogo?
  • Diálogo con un cambio de orientación Spinner +
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.