嘚儿哩咯咙咚呛 2017-01-03 13:26 采纳率: 75%
浏览 8285
已采纳

android recyclerview onBindViewHolder

android recyclerview onBindViewHolder
在使用各类刷新函数来添加数据时,正常现象应该只调用显示着的item的onBindViewHolder函数。
而我在刷新时,所有的item都会被调用onBindViewHolder函数(包括不显示的item)
因此导致画面的大量运算而产生卡顿。
求解这是为什么?
ps:对recyclerview的使用应该没有问题,就是纳闷怎么会出现这种状况。

  • 写回答

3条回答

  • 嘚儿哩咯咙咚呛 2017-01-04 06:48
    关注

    经过4天的折磨终于知道原因了(知道产生这种的现象的原因了,虽然还不是根本原因)
    是因为我对recyclerview控件的大小进行了一些适配大小的工作(比如LinearLayout的weight属性,google的百分比控件等),而导致这个问题。
    现在使用java代码来固定大小就可以避免这个问题。
    这应该是recyclerview的底层实现产生的问题吧,没有时间对源码深入研究。
    如果有知道的大牛,求解惑。
    也谢谢,回答这个问题的朋友!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?