Android 如何识别键盘上的空白
在Android 如何识别键盘上的空白,android,whitespace,keypress,android-keypad,Android,Whitespace,Keypress,Android Keypad,在EditText框中键入文本时,我想确定从键盘上按下了哪个键。我正在使用此代码,但它不起作用 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if (keyCode == KeyEvent.KEYCODE_SPACE) { Toast.makeText(MainActivity.this, "White sp
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);
}
我哪里出错了?试试这个,它可能会对你有所帮助
boolean userPressedKey = false ;
yourEditText.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
userPressedKey = false ;
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
public void onTextChanged(CharSequence s, int start, int before, int count) {
userPressedKey = true;
});
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (userPressedKey) {
if (keyCode == KeyEvent.KEYCODE_SPACE) {
Toast.makeText(MainActivity.this, "White space is clicked", Toast.LENGTH_LONG).show();
return true;
}
}
super.onKeyDown(keyCode, event);
}
您可以尝试以下代码----
}我在EditText中输入数据,现在我想要的是当用户点击空格键时,新单词以一个特殊字符开头,如“$”。这就是编辑文本中空格后的每个单词的第一个字母都应该是“$”。若键盘提供建议,则在按下空格时,它会显示建议。查看此链接。这个问题出现了。
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();
}
}
});