我想确定在EditText
框中键入文本时从键盘上按下了哪个键。我正在使用此代码,但无法正常工作。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_SPACE) {
Toast.makeText(MainActivity.this, "White space is clicked", Toast.LENGTH_LONG).show();
return true;
}
return super.onKeyDown(keyCode, event);
}
我在哪里弄错了?
最佳答案
您可以尝试以下代码----
editText1.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
String lastChar = s.toString().substring(s.length() - 1);
if (lastChar.equals(" ")) {
Toast.makeText(MainActivity.this, "space bar pressed",
Toast.LENGTH_SHORT).show();
}
}
});
}