我需要一个监听器来识别软键盘/屏幕键盘上的按键。
我尝试使用addtextchangelistener textwatcher,但是这个给出了很好的结果,但它也显示了粘贴一些文本时的更改。
我只需要识别用户按键。
是否有任何可能的方法来检测按键。
答案 0 :(得分:4)
请参阅此keyevent并使用以下代码确定用户按下了哪个键。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK)
{
// Do Code here
}
else if(keyCode == KeyEvent.KEYCODE_0)
{
}
else if(keyCode == KeyEvent.KEYCODE_1)
{
}
return super.onKeyDown(keyCode, event); }
答案 1 :(得分:3)
使用KeyEvent类处理键盘事件时相关 API,你应该期望这样的键盘事件只来自一个 硬件键盘。 您永远不应该依赖于接收关键事件 软输入法上的任何键(屏幕键盘)。
答案 2 :(得分:1)
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Do Code here
}
return super.onKeyDown(keyCode, event);
}
答案 3 :(得分:1)
See this if can help you.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 1) {
finish();
return true;
}
return super.onKeyDown(keyCode, event);
}