美文网首页
IndexOutOfBoundsException: Incon

IndexOutOfBoundsException: Incon

作者: 没风的地方 | 来源:发表于2017-12-13 10:48 被阅读21次

很明显是数组越界问题

问题产生的根本原因就是数据集合不对应

数据集合不对应的原因在于使用页面下载了新的数据集,并且传递到了adapter里面,但是adapter里面缓存的position信息是前一个数据集的,而数据集却更新了,因为数据集的差异导致了与holder保存的东西不一致从而崩溃

图中第二个方法是正确的

从这两个方法的对比中很清楚的可以看到,是由于更新了数据集合而没有更新缓存的item导致的。

说到这,其实翻一下adapter的众多方法你会发现解决的办法有许多,这是其中一种:

下载完数据之后使用

使用的更新方法

goodlist是新下载的数据集,使用notifydatasetchange()的话我的也会有错,还使得刷新的特效没有了,使用这个方法不会有错还保留了特效效果。

相关文章

网友评论

      本文标题:IndexOutOfBoundsException: Incon

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