博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RecycleView-Java.lang.IllegalArgumentException: Called attach on a child which is not detached
阅读量:2120 次
发布时间:2019-04-30

本文共 626 字,大约阅读时间需要 2 分钟。

参考:

使用 RecycleViewnotifyItemChanged() 时报的这个错误. 原因就是用的 XRecycleView 控件自带了一个下拉刷新头, 所以当我调用刷新第 0 个时就会报上述异常. 因为下拉刷新头肯定没有被 holder 绑定了. 了解了原因就可以解决了, 于是我把原来的刷新代码改了下.

之前我使用 XRecycleView 控件时, 点击刷新时是用的这种方式:

@Overridepublic void onClick(View v) {    int pos = getLayoutPosition() - 1;    Bean bean = mList.get(pos);    ...    notifyItemChanged(pos);}

前面我也说了因为 XRecycleView 自带了一个下拉头, 所以 getLayoutPosition() 获得的 position 会比正常 +1 所以我在从 mList 获取数据时就会减去1.那么代码改动的地方就是刷新的 position 了.

@Overridepublic void onClick(View v) {    int pos = getLayoutPosition() - 1;    Bean bean = mList.get(pos);    ...    notifyItemChanged(getLayoutPosition());}

转载地址:http://gzkrf.baihongyu.com/

你可能感兴趣的文章
云原生 第十一章 应用健康
查看>>
Leetcode C++ 《第202场周赛》
查看>>
云原生 第十二章 可观测性:监控与日志
查看>>
Leetcode C++ 《第203场周赛》
查看>>
云原生 第十三章 Kubernetes网络概念及策略控制
查看>>
《redis设计与实现》 第一部分:数据结构与对象 || 读书笔记
查看>>
《redis设计与实现》 第二部分(第9-11章):单机数据库的实现
查看>>
算法工程师 面经2019年5月
查看>>
搜索架构师 一面面经2019年6月
查看>>
稻草人手记
查看>>
第一次kaggle比赛 回顾篇
查看>>
leetcode 50. Pow(x, n)
查看>>
leetcode 130. Surrounded Regions
查看>>
【托业】【全真题库】TEST2-语法题
查看>>
博客文格式优化
查看>>
【托业】【新托业全真模拟】疑难语法题知识点总结(01~05)
查看>>
【SQL】group by 和order by 的区别。
查看>>
【Python】详解Python多线程Selenium跨浏览器测试
查看>>
Jmeter之参数化
查看>>
Shell 和Python的区别。
查看>>