Android KeyEvent和keycode之间的区别

时间:2014-08-01 23:14:16

标签: android keyevent keycode

有什么区别? public boolean onKeyDown(int keyCode,KeyEvent event) 参数是keyCode,按钮,用户按下了,但KeyEvent是什么?

3 个答案:

答案 0 :(得分:6)

KeyEvent:每次按键都由一系列关键事件描述,关键事件通常伴有一个关键代码。

KeyCode :是一个定义事件的常量,在KeyEvent类中定义。

例如,如果要检测KeyEvent“ENTER”:

 @Override
  public boolean onKeyDown( int keyCode, KeyEvent event ) {
    if( keyCode == KeyEvent.KEYCODE_ENTER) {
      //Do something...
      return true; 
    }
    return super.onKeyDown( keyCode, event );
  }

答案 1 :(得分:4)

阅读docs

  

用于报告键和按钮事件的对象。   每次按键都由一系列关键事件描述。按键操作以ACTION_DOWN的键事件开始。如果密钥保持足够长以使其重复,则初始向下跟随ACTION_DOWN的其他键事件和getRepeatCount()的非零值。最后一个关键事件是密钥启动的ACTION_UP。如果取消按键,则按键事件将设置FLAG_CANCELED标志。

答案 2 :(得分:3)

KeyEvent可用于指定详细操作,例如:

  • ACTION_DOWN 该键已被按下但尚未释放
  • ACTION_UP 该密钥刚刚发布

用法:

keyEvent.getAction() == KeyEvent.ACTION_DOWN