Android Can';t检测到正在按下星/乘或逗号
我想标题很清楚。我尝试了很多方法,onKeyListeners、dispatchKeyEvent、onKeyDown……对Android Can';t检测到正在按下星/乘或逗号,android,Android,我想标题很清楚。我尝试了很多方法,onKeyListeners、dispatchKeyEvent、onKeyDown……对KEYCODE\u NUMPAD\u MULTIPLY、KEYCODE\u STAR、KEYCODE\u COMMA、KEYCODE\u NUMPAD\u COMMA都不起作用。 这有什么问题?对于ENTER和BACK,它运行良好。以下是我尝试检测的一些方法。如果有必要的话,我正在Nexus 10上尝试所有这些方法 @Override public boolean onKey
KEYCODE\u NUMPAD\u MULTIPLY、KEYCODE\u STAR、KEYCODE\u COMMA、KEYCODE\u NUMPAD\u COMMA都不起作用。
这有什么问题?对于ENTER和BACK
,它运行良好。以下是我尝试检测的一些方法。如果有必要的话,我正在Nexus 10上尝试所有这些方法
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
ShowDialog3();
return true;
}
if ((keyCode == KeyEvent.KEYCODE_NUMPAD_COMMA)) {
EditText eddd = (EditText) getCurrentFocus();
eddd.append(".");
return true;
}
if ((keyCode == KeyEvent.KEYCODE_NUMPAD_MULTIPLY)) {
enter();
return true;
}
return super.onKeyDown(keyCode, event);
}
另一种尝试:
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
if (event.getAction() == KeyEvent.ACTION_UP) {
enter();
return true;
}
}
if (event.getKeyCode() == KeyEvent.KEYCODE_STAR) {
if (event.getAction() == KeyEvent.ACTION_UP) {
enter();
return true;
}
if ((event.getKeyCode() == KeyEvent.KEYCODE_NUMPAD_COMMA)) {
EditText eddd = (EditText) getCurrentFocus();
eddd.append(".");
return true;
}
}
return super.dispatchKeyEvent(event);
};
我还尝试为我正在使用的EditText设置onKeyListener,但没有成功。
怎么了?是虫子还是什么?
谢谢,祝你周末愉快