Android 删除键不工作
我为EnterKeyEvent添加了setOnKeyListener。但是,在添加setOnKeyListener之后,delete(backspace)键不起作用。当我移除setOnKeyListener时,delete键工作正常 如何修复delete键工作正常Android 删除键不工作,android,Android,我为EnterKeyEvent添加了setOnKeyListener。但是,在添加setOnKeyListener之后,delete(backspace)键不起作用。当我移除setOnKeyListener时,delete键工作正常 如何修复delete键工作正常 final EditText edittext = (EditText) findViewById(R.id.editText1); edittext.setOnKeyListener(new OnKeyListen
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;
}
});
根据onKey
返回True
如果侦听器已使用事件,否则返回false。就你而言:
@Override
public boolean onKey(View arg0, int arg1, KeyEvent event) {
...
return true; // Try to return false instead
}
当方法返回
true
时,键未被处理,退格无效。如果返回true
,则处理所有键。试试这个:
if (event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) {
// something here
return true;
}
// otherwhise
return false;
谢谢!我的问题是delete在切换键盘语言后停止工作,尽管我只覆盖了enter键。同样,这个问题在android 8上没有出现,但在早期版本中也存在。你节省了我的时间!