在Android中按左、右、上、下箭头时,onKeyDown不触发

在Android中按左、右、上、下箭头时,onKeyDown不触发,android,keyboard,keyboard-events,Android,Keyboard,Keyboard Events,InputMethodService中的OnKeyDown回调适用于许多硬件键盘按钮,但不能使用左、右、上、下箭头。我怎么办 谢谢你的关注 您是否查看了可以尝试onKeyDown或onkeydup只接收一个事件并打印出keyCode以查看接收到的内容: @Override public boolean onKeyUp(int keyCode, KeyEvent event) { Log.i("your tag", "Keycode: " + keyCode); switch (keyCo

InputMethodService中的OnKeyDown回调适用于许多硬件键盘按钮,但不能使用左、右、上、下箭头。我怎么办

谢谢你的关注

您是否查看了可以尝试onKeyDown或onkeydup只接收一个事件并打印出keyCode以查看接收到的内容:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
  Log.i("your tag", "Keycode: " + keyCode);
  switch (keyCode) {
    case KeyEvent.KEYCODE_DPAD_LEFT:
        leftKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
        rightKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_UP:
        upKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_DOWN:
        downKeyClick();
        return true;
    default:
        return super.onKeyUp(keyCode, event);
  }
}
如果仍然没有检测到箭头键,则可能需要覆盖视图的onKeyDown或onkeydup方法,

您是否查看了,您可以尝试onKeyDown或onkeydup只接收一个事件,并打印出键代码以查看接收到的内容:

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
  Log.i("your tag", "Keycode: " + keyCode);
  switch (keyCode) {
    case KeyEvent.KEYCODE_DPAD_LEFT:
        leftKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
        rightKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_UP:
        upKeyClick();
        return true;
    case KeyEvent.KEYCODE_DPAD_DOWN:
        downKeyClick();
        return true;
    default:
        return super.onKeyUp(keyCode, event);
  }
}

如果您仍然没有检测到箭头键,则可能需要覆盖视图的onKeyDown或onkeydup方法,

您可以看到logcat并显示您得到的错误信息……没有错误。我猜Android不支持这些键盘按钮的触发事件。你可以看到logcat并显示你得到的错误……没有错误。我猜Android不支持这些键盘按钮的触发事件。