2013-06-20 48 views
7

私は自分のアクティビティでdispatchKeyEventを実装して、Enterキーが押されているのを聞きました。 問題は、私がenterをクリックすると、メソッドが2回コールされることです。どうすればこの問題を解決できますか? ありがとう、素敵な一日を!最初に私はACTION_DOWNをしていたが、それは私の古い問題をトリガーた :dispatchKeyEventメソッドを2回呼び出す

それを修正
@Override 
public boolean dispatchKeyEvent(KeyEvent e) { 
if (e.getKeyCode() == KeyEvent.KEYCODE_ENTER) { 

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

try KeyEvent.getAction() – pskink

答えて

15

は、これを実行し。

@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); 
}; 
関連する問題