我想在我的EditText
中收听“ Enter”键,它在所有键盘(除Google键盘外)上都使用OnEditorActionListener
起作用。我正在使用以下代码:
editText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
if (i == EditorInfo.IME_ACTION_GO | i == EditorInfo.IME_MASK_ACTION) {
// My code
} else if (keyEvent != null && keyEvent.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
// My code
}
return false;
}
});
第一个条件和第二个条件都不适用于Google键盘。我还为我的EditText
设置了此选项:
editText.setRawInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
editText.setImeOptions(EditorInfo.IME_ACTION_GO | EditorInfo.IME_MASK_ACTION);
我尝试设置并监听ACTION_DONE
,ACTION_GO
,ACTION_NEXT
等。您能帮我解决问题吗?