La tecla Eliminar no funciona

He añadido setOnKeyListener para Enter keyevent. Sin embargo, después de agregar setOnKeyListener, la tecla delete (backspace) no funciona. Cuando quité el setOnKeyListener, la llave de la cancelación está trabajando muy bien.

¿Cómo arreglar la clave de borrado que funciona bien?

final EditText edittext = (EditText) findViewById(R.id.editText1); edittext.setOnKeyListener(new OnKeyListener() { @Override public boolean onKey(View arg0, int arg1, KeyEvent event) { // TODO Auto-generated method stub if (event != null&& (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) { InputMethodManager in = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); in.hideSoftInputFromWindow(edittext .getApplicationWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS); applySearch(); } return true; } }); 

Si devuelve True , está manejando todas las claves. Prueba esto:

 if (event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) { //something here return true; } //else return false; 

Android: Problema con reemplazar onKeyListener por un botón

De acuerdo con la documentación onKey devuelve True si el oyente ha consumido el evento, false en caso contrario. En tu caso:

 @Override public boolean onKey(View arg0, int arg1, KeyEvent event) { ... return true; // Try to return false instead } 

Cuando el método devuelve claves true no se procesan y el retroceso no funciona.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.