【问题标题】:Android: catching action for keyboard enter button being pressedAndroid:捕捉按下键盘输入按钮的动作
【发布时间】:2014-09-27 23:00:03
【问题描述】:
我正在尝试在数字模式下响应按屏幕软键盘标准系统上的 Enter 按钮。当 myCustomEditText 类获得焦点时,键盘会出现在屏幕上。
尝试了 2 种方法:
- 覆盖
onKeyDown():
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
//做某事..
返回真;
}
return super.onKeyDown(keyCode, event);
}
- 设置监听器
setOnKeyListener:
myCustomEditText.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
onRightButtonClicked();
返回真;
}
返回假;
}
});
(在 myCustomEditText 中也尝试过onKeyDown(),但没有效果)
问题是:
上面的这些方法适用于所有被按下的键,但对于 enter 键 - 这些方法甚至根本没有被触发。 (不是坏的问题KeyEvent.KEYCODE_...)
我的问题是:
为什么这些方法不是针对回车键触发的,而是针对其他键触发的,以及如何监听正确按下的回车键?
【问题讨论】:
标签:
android
keyboard
android-edittext