Cómo ignorar la tecla de búsqueda en DialogFragment
Yo estaba extendiendo la clase de Dialog
para mis diálogos y tuve que usar el siguiente segmento de código en mis diálogos para que no fueran descartados cuando se pulsaba la tecla de búsqueda del teléfono:
setOnKeyListener(new OnKeyListener() { public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_SEARCH) return true; // pretend we've processed it else return false; // pass on to be processed as normal } });
Ahora estoy usando la clase DialogFragment
para mis diálogos. Desafortunadamente DialogFragment
tiene el mismo problema que Dialog
en que los diálogos se descartan cuando se pulsa la tecla de búsqueda del teléfono (independientemente del estado cancelable del diálogo). Doblemente problemático es que DialogFragment
no tiene un método setOnKeyListener
para que el segmento de código anterior ya no se aplique.
- Responde al teclado mientras se actualiza la interfaz de usuario
- Android: windowSoftInputMode = "adjustResize" no hace ninguna diferencia?
- después de presionar el teclado principal no se oculta
- Ocultar teclado en android mientras se toca fuera Editar área de texto
- Teclado superpuesto EditText en clic
Alguien sabe cómo puedo obtener mis diálogos (al mostrar) para ignorar las pulsaciones de la tecla de búsqueda ?
Nota: He intentado agregar el segmento de código anterior al método
onKeyUp
mi actividad, pero desafortunadamente el métodoonKeyUp
mi actividad no se llama si se muestra una instancia deDialogFragment
. En su lugar, irritantemente, la instancia deDialogFragment
es descartada.
- Androide que hace la disposición desplazable cuando el teclado suave abierto, pero no el desplazamiento él hacia arriba
- Android: ¿Cómo / dónde colocar código de gesto en IME?
- Android Phone Keypad no tiene signo de período
- Ocultar teclado cuando se envía una búsqueda o se elige una sugerencia de búsqueda
- Obtener la lista de idiomas compatibles con el teclado de Android
- ¿Mueve los diseños cuando se muestra el teclado suave?
- ¿Cómo agregar margen entre EditText y Soft Keyboard?
- Android webView: Es posible configurar el teclado numérico primero por defecto cuando se usa input type = text
Prueba esto.
Dentro de su DialogFragment.Onresume
getDialog().setOnKeyListener(new OnKeyListener() { public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event){ if (keyCode == KeyEvent.KEYCODE_SEARCH) return true; // pretend we've processed it else return false; // pass on to be processed as normal } });