5

Mi actividad implementa KeyListener y mi edittext tiene un conjunto de escucha de teclas.Problema de Android: EditText, KeyListener y el botón físico Back

editor = new EditText(this); 
     editor.setMinLines(4); 
     editor.setMinimumWidth(400); 
     editor.setKeyListener(this); 

cuando el usuario escribe algo y prensas "Enter" en el softkeyboard texto de un TextView se establece en la entrada de los usuarios.

@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í la vista es una Vista de texto. Mi problema es que en esta actividad el botón físico de retroceso no funciona. Presiónalo y no pasa nada. Cualquier consejo sería bienvenido.

Respuesta

4

Al devolver true desde la función onKeyDown, informa a Android que ha manejado todos los eventos clave. En cambio, solo devuelve verdadero en el caso de la tecla Intro. Devuelva false de lo contrario. Esto permitirá a Android manejar la tecla presionada hacia atrás.

0

encontrar introducir 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; 
    } 
}); 
Cuestiones relacionadas