软键盘没有EditText&检测按键

时间:2010-11-23 14:45:45

标签: android keyboard onkeydown

如何使用硬键盘或软键盘可靠地检测按键?

我的应用程序通过wifi远程控制另一台设备,我需要检测软键盘或硬键盘上的每次按键。我真的不需要EditText,因为我只需要在按下它们时一次发送一个字符,而不需要最终的文本字符串。

我尝试使用带有OnKeyPress的EditText,但遇到了问题here而没有使用软键盘进行按键操作。而且TextWatcher不是一个好的选择,因为我需要每次按键。

如果必须,我会使用EditText,但不愿意。我真正想要的是:

  • 当用户点击“搜索”按钮
  • 时,弹出一个软键盘
  • 用户按键,我将代码发送到远程设备。不需要在EditText屏幕上看到任何内容,因为它将显示在远程设备上
  • 用户按下软键盘上的自定义完成按钮将其关闭

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

你可以覆盖[onKeyDown(int keyCode, KeyEvent event)] [1]和(或)[onKeyUp(int keyCode, KeyEvent event)] [2]  应用程序活动类中的方法,这将允许您获得有关诸如后退密钥和其他硬件密钥等密钥的通知...

注意:您可以获得关于轨迹球运动等的通知......

[1]:http://developer.android.com/reference/android/view/View.html#onKeyDown(int,android.view.KeyEvent)   [2]:http://developer.android.com/reference/android/view/View.html#onKeyUp(int,android.view.KeyEvent)