【发布时间】:2011-09-18 15:26:20
【问题描述】:
这是我的代码,但问题是当我想清除一些我无法清除的字符时
TWL=new TextWatcher(){
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
name.removeTextChangedListener(this);//after this line you do the editing code
name.setText(s+"-");
name.setSelection(name.getText().length());
name.addTextChangedListener(TWL); // you register again for listener callbacks
}};
name = (EditText)findViewById(R.id.editText1);
name.addTextChangedListener(TWL);
【问题讨论】:
-
为什么要删除监听器然后再添加呢?这没有道理。此外,我没有在您的代码中看到任何字符删除 - 您所做的只是添加一个连字符
-
删除字符的代码在哪里?
-
@Henrique Rocha 当我进入退格键时,我无法删除字符
-
我遇到了同样的问题:使用 setText 设置文本后,TextWatcher 在输入更多文本之前不会响应删除。你找到解决办法了吗?
标签: android android-edittext listener settext