我有一个 EditText,当用户使用回车键时,它会创建一个新行。我希望回车键只创建一个空格,而不是一个新行。我不知道这样做。我想这样做的原因是,当用户单击 Enter 时,它会创建一个新行,当他们提交消息时,它存储的消息和数据库带有一个空行,然后当它被检索并显示在 android 手机上时,它会显示和空行。
问问题
1026 次
2 回答
1
尝试这个:
final EditText edittext = (EditText) findViewById(R.id.edittext);
edittext.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View v, int keyCode, KeyEvent event) {
// If the event is a key-down event on the "enter" button
if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
(keyCode == KeyEvent.KEYCODE_ENTER)) {
// Perform action on key press
editText.setText(editText.getText() + " ");
return true;
}
return true;
}
});
于 2013-09-16T03:28:29.370 回答
0
试试这种方法效果很好
EditText edit = (EditText) findViewById(R.id.edit);
InputFilter filter = new InputFilter() {
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
for (int i = start; i < end; i++) {
if (source.charAt(i) == '\n') {
return " ";
}
}
return null;
}
};
edit.setFilters(new InputFilter[] { filter });
于 2013-09-16T04:48:55.790 回答