最近在做一个项目,类似于购物车页面,如图:
由于需要及时更新总价格,所以需要对ListView的Item上面的EditText和CheckBox进行监听。
由于ListView在滑动的时候会重新加载数据,所以需要及时的将EditText中的数据存储在List中,否则下一次加载的时候EditText中的值又变成最开始的值了。
我用的是TextWatcher,这一部分的代码如下:
holder.countET.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
Debug.v(TAG, "onTextChanged,position:"+position+",count:"+s);
}

@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub

}

@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub


}
});当我在滑动ListView时(并未触摸EditText部分),这时候页面中的EditText中的数值没有变化。但是Debug.v(TAG, "onTextChanged,position:"+position+",count:"+s);这个地方会一直输出的,而且那个s的值莫名其妙。
请教各位大神,这个问题怎么解决啊?我该在什么地方将EditText中的新的值存起来呢?listvieweditext