dispatchKeyEvent调用方法两次

时间:2013-06-20 17:29:10

标签: java android

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

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

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

1 个答案:

答案 0 :(得分:16)

修正了它,完成了这个: 起初我正在做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);
};