我有2个edittext,我想将第二个edittext设置为0,如果第一个edittext的值小于10,则将其停用。我使用了TextWatcher,但在运行时出现堆栈溢出错误。有人能帮我吗??我的代码如下:
qteDev = (EditText) findViewById(R.id.edt_qtedev);
qte = (EditText) findViewById(R.id.edt_qte);
qte.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(qte.getText().toString().equals(""))
return ;
int l = qte.getText().length();
if (l == 1) {
qteDev.setText("0");
qteDev.setClickable(false);
qteDev.setEnabled(false);
qteDev.setActivated(false);
}
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});发布于 2014-06-06 03:59:29
尝试修复您的afterTextChanged方法
qteDev = (EditText) findViewById(R.id.edt_qtedev);
qte = (EditText) findViewById(R.id.edt_qte);
qte.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
if(s.toString().length() < 10){
qteDev.setText("0");
qteDev.setEnable(false);
}
}如果有任何问题,请提出任何意见。谢谢
https://stackoverflow.com/questions/13765893
复制相似问题