如何覆盖Android中的软键盘按键事件?

我需要一个侦听器来检测用户在我的活动上的交互情况,该活动有一个附加到它的片段,为此我已覆盖diapatchTouchEvent() ,该工具对触摸事件和硬键事件工作正常,但不适用于软键盘按键。

为了拦截键盘触摸事件,我尝试了onUserInteraction()dispatchKeyEvents()onKeyUponKeyDown但是它们都不适用于softkeyboard。

有没有其他方法来拦截Android中的软键盘事件?

对于上面的查询,我已经通过这些链接:

https://stackoverflow.com/a/25620981/3954050

Android SoftKeyboard onKeyDown / Up未检测到“替代”键


如果你想拦截键盘事件就像完成,或者搜索或输入等,在你的编辑文本中添加一个类似的选项

<EditText
   ..../
  android:id="@+id/myEditText"
  android:imeOptions="actionSearch"/>

然后将EditorActionListener添加到该编辑文本中。

myEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            boolean handled = false;
            if (actionId == EditorInfo.IME_ACTION_SEARCH){
                //Do something
            }
链接地址: http://www.djcxy.com/p/18439.html

上一篇: How to override Soft keyboard keyPress event in android?

下一篇: My xlib code can listen to keyboard events but it fails for some windows