Android edittext 如何立即知道用户是否在edittext android中按空格
以下是我用来获取密钥事件的方法,这些方法在emulator上运行良好,但在设备上似乎不起作用Android edittext 如何立即知道用户是否在edittext android中按空格,android-edittext,onkeydown,textwatcher,Android Edittext,Onkeydown,Textwatcher,以下是我用来获取密钥事件的方法,这些方法在emulator上运行良好,但在设备上似乎不起作用 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if (keyCode == KeyEvent.KEYCODE_SPACE) { Log.e("onkeydown", "onkeydown"); } r
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_SPACE) {
Log.e("onkeydown", "onkeydown");
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_SPACE) {
Log.e("dispatch", "dispatch");
}
return super.dispatchKeyEvent(event);
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_SPACE) {
Log.e("onkeyup", "onkeyup");
}
return super.onKeyUp(keyCode, event);
}
以下是我用来获取密钥事件的方法,这些方法在emulator上运行良好,但在设备上似乎不起作用
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_SPACE) {
Log.e("onkeydown", "onkeydown");
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_SPACE) {
Log.e("dispatch", "dispatch");
}
return super.dispatchKeyEvent(event);
}
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getKeyCode() == KeyEvent.KEYCODE_SPACE) {
Log.e("onkeyup", "onkeyup");
}
return super.onKeyUp(keyCode, event);
}
试试这个
editText.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int key, KeyEvent event) {
if (event.getAction()==KeyEvent.ACTION_DOWN && key == KeyEvent.KEYCODE_ENTER) {
//write code when key press
return true;
}
return false;
}
});