Necesito para manejar el final de un DialogFragment (después de una llamada .descartar) – por ejemplo, me gustaría mostrar un toast dentro de la actividad que «contiene» el fragmento después de despedir.

¿Cómo puedo controlar el evento?

Desea cerrar el cuadro de diálogo y, a continuación, mostrar en un brindis cuando es despedido?
sí, es lo que quiero hacer

OriginalEl autor giozh | 2013-03-01

2 Comentarios

  1. 21

    Reemplazar onDismiss() en su DialogFragment, o el uso setOnDismissListener() en el bloque de código donde se está construyendo el fragmento.

    La referencia tolds para reemplazar onDismiss. Ahora tengo otro problema. Cómo puedo recuperar la mainview contexto donde se crean los brindis?
    Todos se beneficiarían si se crea otra pregunta de cómo conseguir el contexto. Probablemente hay otras respuestas que usted puede encontrar que ya han respondido a esta pregunta también.

    OriginalEl autor Austyn Mahoney

  2. 12

    Me enfrenté a un problema similar, pero quería informar a otra actividad sobre el diálogo despedir (no de la actividad que crea y se mostró el cuadro de diálogo).

    Aunque puede simplemente reemplazar el onDismiss() método en su DialogFragment como Austyn Mahoney sugerido, sin embargo, usted NO puede uso setOnDismissListener(), porque DialogFragment simplemente no facilite tales método (de acuerdo a: Los Desarrolladores De Android DialogFragment Referencia).

    Pero todavía no es otra buena manera de informar a cualquier otra actividad sobre el diálogo descartar, (he encontrado que es lo que hay: DialogFragment y onDismiss), aquí se trata de:

    En primer lugar, usted debe hacer su Actividad (la que desea pasar información acerca del cuadro de diálogo de despedir a) implementar OnDismissListener:

    public final class YourActivity extends Activity implements DialogInterface.OnDismissListener {
    
        @Override
        public void onDismiss(final DialogInterface dialog) {
            //Fragment dialog had been dismissed
        }
    
    }

    De nuevo de acuerdo a Los Desarrolladores De Android DialogFragment Referencia DialogFragment ya implementa OnDismissListener con onDismiss() método. Es por eso que usted debe reemplazar y llamar su onDismiss() método que se ha implementado en YourActivity:

    public final class DialogFragmentImage extends DialogFragment {
    
        @Override
        public void onDismiss(final DialogInterface dialog) {
            super.onDismiss(dialog);
            final Activity activity = getActivity();
            if (activity instanceof DialogInterface.OnDismissListener) {
                ((DialogInterface.OnDismissListener) activity).onDismiss(dialog);
            }
        }
    
    }
    en onDismiss (..) ¿cómo puedo identificar un cuadro de diálogo si tengo varios cuadros de diálogo?
    Cuando el diálogo es despedido sistema pasa referencia a los despedidos de diálogo en onDismiss(final DialogInterface dialog) argumento. Ver: developer.android.com/reference/android/app/…

    OriginalEl autor Krzysiek

Dejar respuesta

Please enter your comment!
Please enter your name here