欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

java.lang.IllegalArgumentException: Called attach on a child which is not detached: ViewHolder

程序员文章站 2022-04-05 11:21:29
转载请标明出处,维权必究:https://www.cnblogs.com/tangZH/p/10116298.html 在项目过程中出现了上述错误。 会出现这样的错误是在我使用: notifyItemRemoved(position); notifyItemRangeChanged(position ......

转载请标明出处,维权必究:https://www.cnblogs.com/tangzh/p/10116298.html 

在项目过程中出现了上述错误。

会出现这样的错误是在我使用:

notifyitemremoved(position);

notifyitemrangechanged(position, mlist.size() - position);

的时候出现的,其实是因为我的recycleview有footview,而当我删除最后一个item的时候,notifyitemrangechanged(position, mlist.size() 里面的position对应的item就变成footview了(调用notifyitemremoved(position);并不会刷新position,可参考:https://www.cnblogs.com/tangzh/p/10116095.html),由于footview没有绑定viewholder,所以调用notifyitemrangechanged(position, mlist.size() - position)相当于刷新footview,出现了该错误。