我有一个 EditText
。我希望每当用户按下回车键时,自动插入一个数字(增量数字)。我应该使用 TextWatcher
接口(interface)还是 OnEditorActionListener
?如果我使用 TextWatcher
,如何识别 enter
键。
我这样做了,但什么也没发生。
View.OnKeyListener onEnter = new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if ((event.getAction() == KeyEvent.ACTION_DOWN)
&& (keyCode == KeyEvent.KEYCODE_ENTER)) {
edtInput.addTextChangedListener(new HandlEventEditText(edtInput));
}
return false;
}
};
和HandlEventEditText
类
public class HandlEventEditText implements TextWatcher {
@Override
public void afterTextChanged(Editable s) {
editText.setText("4");
}
}
最佳答案
解决方案:
像这样使用:
editText.setOnKeyListener(new OnKeyListener() {
public boolean onKey(View view, int keyCode, KeyEvent keyevent) {
//If the keyevent is a key-down event on the "enter" button
if ((keyevent.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) {
//...
// ...
// ...
return true;
}
return false;
}
});
你可以在那里输入逻辑,你的回车键会按照你说的去做。
希望对您有所帮助。
关于android - 在 EditText 中处理 “Enter” 并在其中插入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52289915/