Android 应用 大多都没在软键盘监听上做功夫 今天项目中突然发现搜狗输入法英文输入 回车监听无效 于是探索1小时 得出解决方案
继承EiditText 复写
@Override
public InputConnection onCreateInputConnection(EditorInfo outAttrs) {
return new InputConnectionWrapper(super.onCreateInputConnection(outAttrs),true){
@Override
public boolean commitText(CharSequence text, int newCursorPosition) {
if(text.equals("\n")) {
sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_ENTER));
return false;
}
return super.commitText(text, newCursorPosition);
}
};
}
findViewById.setOnKeyListener { v, keyCode, event ->
if(keyCode== KeyEvent.KEYCODE_ENTER&&event.action==KeyEvent.ACTION_DOWN)
{
Toast.makeText(this, "keycode:" + keyCode + " event:" + event, Toast.LENGTH_LONG)
.show();
true;
}else {
false
}
}
完美解决