Android 防止键事件-键代码输入
我有一个物理键盘连接到我的android设备。我有一个带有两个按钮的应用程序,以下两个函数用于处理KeyEvent:Android 防止键事件-键代码输入,android,Android,我有一个物理键盘连接到我的android设备。我有一个带有两个按钮的应用程序,以下两个函数用于处理KeyEvent: public boolean onKeyUp(int keyCode, KeyEvent event) { if(state==State.INI){ char unicodeChar = (char)event.getUnicodeChar(); Log.d("CHAR", "UP: "+Character.toString(unicod
public boolean onKeyUp(int keyCode, KeyEvent event) {
if(state==State.INI){
char unicodeChar = (char)event.getUnicodeChar();
Log.d("CHAR", "UP: "+Character.toString(unicodeChar)+" - "+Integer.toString(keyCode));
}
return true;
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(state==State.INI){
char unicodeChar = (char)event.getUnicodeChar();
Log.d("CHAR", "DOWN: "+Character.toString(unicodeChar)+" - "+Integer.toString(keyCode));
}
return true;
}
但是,即使它处理回车键也不能阻止系统处理它:s根据示例,我将return true更改为false,并且我可以使用按钮之间的箭头键导航,因此使用return true,它几乎可以处理除回车键以外的所有键:s解析为:
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
Log.d("CHAR","YOU CLICKED ENTER KEY");
return false;
}
return super.dispatchKeyEvent(e);
};
决议如下:
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
Log.d("CHAR","YOU CLICKED ENTER KEY");
return false;
}
return super.dispatchKeyEvent(e);
};