2014-04-01 67 views
0

我正在尝试创建一个菜单页,其中包含一系列2位快捷键..所以我需要能够听取2个按键,然后根据哪个按键进行操作。在Android上连续按两次键?

我设法得到这个工作的一个重点:

@Override 
public boolean dispatchKeyEvent(KeyEvent e) { 
    if(e.getAction() == KeyEvent.ACTION_UP) { 
     if (e.getKeyCode() == KeyEvent.KEYCODE_F) { 
      Log.d("Test", "YOU PRESSED THE F KEY"); 
      startActivity(new Intent(getApplicationContext(), MainActivity.class)); 
      return true; 
     } 
    } 
    return super.dispatchKeyEvent(e); 
}; 

但我仍然试图找出如何我想补充在听取第二按键,然后开始活动。谢谢

+0

记住最后一个键码并做检查 – Libin

回答

1

我假设2键是E和F.更改您的代码如下。

private int keyCode = KeyEvent.KEYCODE_UNKNOWN; 

@Override 
public boolean dispatchKeyEvent(KeyEvent e) { 
    if(e.getAction() == KeyEvent.ACTION_UP) { 
     if (keyCode == KeyEvent.KEYCODE_E && e.getKeyCode() == KeyEvent.KEYCODE_F) { 
      Log.d("Test", "YOU PRESSED THE E KEY and then F kEY"); 
      startActivity(new Intent(getApplicationContext(), MainActivity.class)); 
      return true; 
     }else { 
      keyCode = e.getKeyCode(); 
     } 
    } 
    return super.dispatchKeyEvent(e); 
};