OnEditorActionListener no funciona
Simplemente quiero capturar el evento cuando el usuario presione entrar en un editText.
No recibí el mensaje Toast, no el "Enter presionado" y no el "Algunas teclas presionadas!" ya sea.
- Restringir edittext a una sola línea
- Android - obtener la selección de texto de EditText
- Espacios de verificación de Android en EditText
- Android EditText La vinculación se rompe después de la actualización de MvvmCross de 4.2.3 a 4.4.0 con Linker activado
- Android: Sugerencia de EditText en una sola línea
¿Qué mi está haciendo mal?
myEditText.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { Toast.makeText(getApplicationContext(), "Some key pressed!", Toast.LENGTH_LONG).show(); if (event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) { Toast.makeText(getApplicationContext(), "Enter pressed", Toast.LENGTH_LONG).show(); return true; } return false; } });
EDIT:
Bueno, está funcionando en Android 2.3.3 y no funciona en 4.1.2 ¿ Alguna idea de cómo puedo hacer que esto funcione en cualquier dispositivo Android?
- Estilo de fuente de sugerencia diferente y escrito en estilo de fuente de texto android
- Cómo establecer dinámicamente los parámetros de diseño en Android?
- Cómo hacer que la altura de la caja EditText se expanda
- Manejar la tecla Enter en EditText a través de diferentes dispositivos
- Android EditText ("Textbox"): Auto capitalización de la primera letra de cada palabra mientras el usuario escribe
- Validación de correo electrónico en EditText - Android
- EditText - Cómo establecer el texto predeterminado en android edittext
- Haga un subrayado rojo ondulado para algunas palabras en edittext
Intente establecer el EditText
en modo de una sola línea.
editText.setSingleLine();
O en el archivo de diseño xml:
android:singleLine="true"
ACTUALIZAR
está obsoleto. De ahora en adelante, use android:singleLine="true"
android:maxLines="1"
con android:inputType="text"
para lograr este comportamiento
Y
editText.setMaxLines(1); editText.setInputType(InputType.TYPE_CLASS_TEXT);
Para establecer programaticamente.
myEditText.setOnEditorActionListener(new OnEditorActionListener() { public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) { Toast.makeText(getApplicationContext(), "some key pressed", Toast.LENGTH_LONG) .show(); return false; } });
Este código me muestra alguna tecla presionada cuando presione la tecla enter después de escribir algo en mi edittext. Pero no lo que es problema en su código.
android:imeOptions="actionGo"
en xml. actionDone
ya no responde a onEditorAction
.
El problema para mí era que había establecido en XML android:inputType="textMultiline"
. Cuando quité la opción de textMultiline
, el EditorListener
comenzó a trabajar.
- Cómo limitar la longitud de EditText a 7 enteros y 2 decimales?
- Obtener inesperado CallbackManager, en la integración de facebook android