es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Salir de la actividad sin cerrar el diálogo.

Estoy evitando que la caja de diálogo se cierre cuando presiono el botón de retroceso de la actividad. Cuando presione el botón de retroceso, la caja de diálogo debería salir sin cerrarse. Dialog.setCancelable(false); Intenté esto, pero hace que el botón de retroceso sea incontrolable cuando se abre la caja de diálogo. Espero haber logrado explicar la pregunta. Por favor, ayúdeme.

¿O cerrar la caja de diálogo al mismo tiempo y salir de la actividad?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para evitar que el cuadro de diálogo se cierre al presionar el botón de retroceso, puedes implementar los siguientes pasos:

    1. Configura el método setCancelable del objeto Dialog en false.
    myDialog.setCancelable(false);
    
    1. Sobrescribe el método onBackPressed de la Activity para descartar el diálogo.
    @Override
    public void onBackPressed() {
        if (myDialog.isShowing()) {
            myDialog.dismiss();
        } else {
            super.onBackPressed();
        }
    }
    

    Esto permitirá que el botón de retroceso descarte el diálogo si se muestra actualmente. Si no, el botón de retroceso realizará su acción predeterminada de cerrar la actividad.

    Alternativamente, si quieres cerrar el diálogo y salir de la actividad al mismo tiempo, simplemente llama al método finish() de la actividad después de descartar el diálogo.

    @Override
    public void onBackPressed() {
        if (myDialog.isShowing()) {
            myDialog.dismiss();
        } else {
            super.onBackPressed();
            finish();
        }
    }
    

    Esto descartará el diálogo y finalizará la actividad cuando se presione el botón de retroceso.

Comments are closed.