Tengo una EditarTexto que quiero controlar KeyEvents para, y tengo un oyente establecido de la siguiente manera:Android: teclas KeyListener para una EditarTexto que no reciben
mText = (EditText) this.findViewById(R.id.title);
mText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
final int view = v.getId();
switch (view) {
case R.id.title:
Log.d(LOG_TAG, "key handled");
break;
}
return false;
}
});
Mi problema es que cuando el EditarTexto SE escrito usando el teclado virtual, la única pulsación de tecla que activa el registro es la tecla de retroceso. Comprobé que todas las demás pulsaciones de teclas ni siquiera están activando onKey()
. Estoy seguro de que esto es algo simple, pero no encontré nada en SO que pareciera tratar con esto.
Gracias,
Paul
De la documentación 'Las pulsaciones de teclas en los métodos de entrada suave no son necesarias para activar los métodos en este oyente, y de hecho se desalientan a hacerlo. El teclado predeterminado de Android no los activará para ninguna clave de ninguna aplicación que se dirija a Jelly Bean o posterior, y solo lo entregará para algunas pulsaciones de teclas a las aplicaciones dirigidas a Ice Cream Sandwich o versiones anteriores. Http://developer.android.com/reference /android/text/method/KeyListener.html –