RecyclerView EditText复用数据错乱问题2019-11-19

1.方案一

暴力破解 禁用复用

helper.setIsRecyclable(false);

2.方案二

1.先移除监听

if (hold.et.getTag() instanceof TextWatcher){ hold.et.removeTextChangedListener ((TextWatcher) hold.et.getTag());}

2.设置值

hold.et.setText("");

3.添加监听

TextWatcher watcher = new TextWatcher() {

                @Override

                public void beforeTextChanged(CharSequence s, int start, int count, int after) {


                }

                @Override

                public void onTextChanged(CharSequence s, int start, int before, int count) {

                }

                @Override

                public void afterTextChanged(Editable s) {           

String trim = s.toString().trim();

item.setInputNum(trim);

 }

 };

hold.et.addTextChangedListener(watcher);

4.设置tag值

input_et.setTag(watcher);

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容