我有一个物理键盘连接到我的 android 设备。我有一个带有两个按钮的应用程序,以下两个函数处理 KeyEvent:
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;
}
但即使它处理 ENTER 键也不会阻止它由系统处理:s 例如,我将 return true 更改为 false 并且我可以使用按钮之间的箭头键导航,因此使用 return true 它几乎可以工作除了 ENTER 之外的每个键:s