有没有人知道是否有办法区分是在屏幕上还是在物理键盘上按下了 back 键?我们有一个ASUS Transformer Prime的问题,其中android back 键放在 ESC 应该放在物理键盘上,人们希望它像 ESC一样工作
答案 0 :(得分:3)
结果事件有getSource()
方法。
if (((event.getSource() & InputDevice.SOURCE_KEYBOARD) != 0) && event.getDeviceId() > 0)
或
if (event.getDeviceId() > 0 && event.getSource() == InputDevice.SOURCE_KEYBOARD)
这个条件的第一个版本来自android api。 (event.getSource() & InputDevice.SOURCE_KEYBOARD) != 0)
部分。
这应该可以很好地告诉你事件是否来自物理键盘。