OnEditorActionListener不适用于Google键盘

时间:2019-11-18 09:50:06

标签: android android-edittext

我想在我的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_DONEACTION_GOACTION_NEXT等。您能帮我解决问题吗?

0 个答案:

没有答案