【发布时间】:2012-08-30 06:52:38
【问题描述】:
我正在开发一个 Android 应用程序。在我的应用程序中,我必须使用基于文本的图像。所以我写 OnChangeListener() 为 EditText。以下是我的示例代码。
edt.addTextChangedListener(this);
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
CharSequence cs=convert(edt.getText.toString());
edt.setText(cs);
}
@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
}
但是我得到了上述代码的异常。我知道异常的原因是从 afterTextChanged() 方法调用 setText()。但是我必须根据相同的EditText文本更改来更改EditText文本值。帮助我的朋友
【问题讨论】:
-
你能解释一下你得到了什么例外吗?
-
我得到了stackoverflow。原因是我正在尝试从 ontextchanged() 设置文本。所以它会进行无休止的递归。
-
一旦你已经完成了,你又在edittext中设置文本,这也是不改变它吗?这不是很奇怪吗?你确定,你真的需要在那里重写文本,或者只是想相应地改变图像?