前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决RecyclerView点击一个item,后面每间隔9个item就会触发一次同样的事件的问题

解决RecyclerView点击一个item,后面每间隔9个item就会触发一次同样的事件的问题

原创
作者头像
用户10521372
发布2023-05-22 15:52:53
3350
发布2023-05-22 15:52:53
举报
文章被收录于专栏:android自用android自用

当你通过点击事件改变第一个item的状态之后,向下滑动到第10个item也会同样触发,然后第19、28、37、46等等,每间隔9个item就会重复之前的操作后的显示状态。

网上尝试了不同的的方法,什么接口回调之类的,都不太成功(可能是我写法有问题),但是找到了这个方法是绝对可行。

终于在一位兄弟的文档中找到了这么一句代码

代码语言:java
复制
recyclerview.setItemViewCacheSize(int)

其实就是一个缓存的问题,只要在recyclerview相应的activity或者fragment中设置

int是缓存数,默认值为5,每间隔(4+5)个item就会进行复用,如果你把它设为10,那么每间隔(4+10)个item就会复用,你只要把int的值设为:【item数 - 4】即可!

代码语言:java
复制
BaseAdapter adapter = new BaseAdapter();
//适配器的总行数 - 4
recyclerview.setItemViewCacheSize(adapter.getCount - 4);

以此记录下,传递给更多的人

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档