Android Problema: EditText, KeyListener y el botón físico anterior
Mi actividad implementa KeyListener y mi edittext tiene un conjunto de oyentes clave.
editor = new EditText(this); editor.setMinLines(4); editor.setMinimumWidth(400); editor.setKeyListener(this);
Cuando el usuario escribe algo y presiona "enter" en el teclado de software, el texto de la vista de texto se establece en la entrada de usuarios.
- Android: singleline = true no funciona para edittext
- Personalizar Edittext carácter de entrada a la imagen?
- ¿Dónde debo colocar los archivos "ttf" en un proyecto de Android?
- Deshabilitar texto predictivo en EditText
- Etiqueta EditarTexto?
@Override public int getInputType() { return InputType.TYPE_TEXT_FLAG_MULTI_LINE; } @Override public boolean onKeyDown(View view, Editable text, int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_ENTER){ outview.setText(editor.getText()); } return true; }
Aquí outview es un TextView. Mi problema es que en esta actividad el botón de retroceso físico no funciona. Presiona y no pasa nada. Cualquier consejo sería bienvenido.
- Accesibilidad de Android: ¿Cómo cambio el texto leído en voz alta para una Vista de Edición de Texto
- Android evita que EditText solicite el enfoque automáticamente
- Resaltar todas las palabras que se buscan a través de EditText
- ¿Cómo eliminar la última letra de EditText con el botón?
- Mostrar la contraseña con EditText
- Android: EditText NextFocusDown no desencadenar Spinner
- Mostrar el último carácter de una contraseña en un EditText
- Mostrar teclado en Diálogo
Al devolver true
de la función onKeyDown
, informará a Android que ha gestionado todos los eventos clave. En su lugar, sólo devuelve true en el caso de la tecla enter. De lo contrario, devuelve false
. Esto permitirá a Android manejar la pulsación de tecla de retroceso.
Encontrar entrada de softkeyboard
txt.setOnKeyListener(new OnKeyListener() { @Override public boolean onKey(View v, int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN) { outview.setText(editor.getText()); } return true; } });
- La aceleración de hardware no está habilitada
- XMPP aSmack El servidor MultiUserChat sigue enviando mensajes ya recibidos