Android: cómo hacer que el teclado ingrese el botón diga "Buscar" y manejar su clic?
No puedo entender esto. Algunas aplicaciones tienen un EditText (cuadro de texto) que, al tocarlo y que muestra el teclado en pantalla, el teclado tiene un botón "Buscar" en lugar de una tecla enter.
Quiero implementar esto. ¿Cómo puedo implementar ese botón de búsqueda y detectar la pulsación del botón Buscar?
- Cómo ocultar Soft Keyboard cuando se inicia la actividad
- Convertir el teclado virtual de Android en Bengalí
- ¿Por qué android KeyboardView.OnKeyboardActionListener.onRelease () se llama después de cada repetición de claves?
- ¿Cómo mover todo el diseño cuando se muestra el teclado?
- Cómo NO cerrar el teclado cuando se pulsa DONE en el teclado
Editar : encontró cómo implementar el botón Buscar; En XML, android:imeOptions="actionSearch"
o en Java, EditTextSample.setImeOptions(EditorInfo.IME_ACTION_SEARCH);
. Pero, ¿cómo puedo manejar al usuario pulsando el botón Buscar? ¿Tiene algo que ver con android:imeActionId
?
- Android OnEditorActionListener () actionId da 0 cuando hago clic en la tecla Hecho
- Cómo evitar que el teclado en pantalla cubra el EditText en android
- Cómo incluir sugerencias en el teclado de Android
- Ocultar softkeyboard para la aplicación locker
- Abrir el teclado virtual programáticamente
- El teclado se abre como pantalla completa en modo horizontal
- Teclado Android "Ir" para "Buscar"
- ¿Diferencia entre adjustResize y adjustPan en android?
En el diseño, defina sus opciones de método de entrada para buscar.
<EditText android:imeOptions="actionSearch" android:inputType="text" />
En Java, agregue el oyente de la acción del editor.
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSearch(); return true; } return false; } });
Ocultar el teclado cuando el usuario hace clic en la búsqueda. Adición a la respuesta de Robby Pond
private void performSearch() { editText.clearFocus(); InputMethodManager in = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); in.hideSoftInputFromWindow(searchEditText.getWindowToken(), 0); ...perform search }
En XML, poner imeOptions: actionSearch y inputType: "text", maxLines: "1"
<EditText android:id="@+id/search_box" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/search" android:imeOptions="actionSearch" android:inputType="text" android:maxLines="1" />
- ¿Es posible declarar una variable en Gradle utilizable en Java?
- Cómo cambiar el tamaño de un mapa de bits en Android?