12

我已经在我的活动中实现了 dispatchKeyEvent 来监听被按下的 Enter 键。问题是当我点击回车时,它会调用我的方法两次?我怎样才能解决这个问题 ?谢谢,祝你有美好的一天!

@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.KEYCODE_ENTER) {

              enter();
        return true;
    }
    return super.dispatchKeyEvent(e);
};
4

1 回答 1

24

修复它,做了这个:起初我正在做ACTION_DOWN,但那引发了我的一个老问题。

 @Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
        if (event.getAction() == KeyEvent.ACTION_UP){

         enter();

            return true;
    }}
    return super.dispatchKeyEvent(event);
};
于 2013-06-20T17:43:48.120 回答