美文网首页
RecyclerView 中EditText 数据刷新后造成数据

RecyclerView 中EditText 数据刷新后造成数据

作者: 胡洁_ec66 | 来源:发表于2018-12-26 11:47 被阅读0次

在很久之前帮别人解决过一个列表中item有EditText,因为其他操作刷新了Adapter,造成了EditText中数据发生了错乱,当时怎么写的已经忘记了。不过现在又碰到了这个问题,就把它记录下来。


其实这个问题解决办法不止一种:

1、比较暴力的解决办法,就是不让RecycleView进行复用

取消RecyclerView复用

 比较简单就是在onBindViewHolder()中holder.setIsRecyclable(false);这种做法在数据量比较少的情况下可以使用,在数据量大了那就呵呵了....

当然了如果数据量不大可以采用这个办法。

2、这一种就比较优雅了,先把重要代码贴出来

这个做法实际上就在onBindViewHolder()中判断EditText是否获取了焦点,只有在获取焦点了在进行内容的改变。

最好是在item布局中EditText的父级控件中找一个,设置成

android:focusable="true"

android:focusableInTouchMode="true"

确保在开始的时候EditText就不获取焦点。

内容比较简单,希望对您有所帮助!!!

相关文章

网友评论

      本文标题:RecyclerView 中EditText 数据刷新后造成数据

      本文链接:https://www.haomeiwen.com/subject/tjxhlqtx.html