美文网首页js css html
关于recyclerview复用导致应用卡顿崩溃

关于recyclerview复用导致应用卡顿崩溃

作者: motosheep | 来源:发表于2022-07-18 20:54 被阅读0次

    内容如题,对于recyclerview复用,各个开发者都有自己的见解。
    而本次实战中,就是因为复用,导致的一个性能问题。

    场景还原

    recyclerview里面有个textview控件,textview使用了setspan方法设置了图片。然后滑动了累计几十个有图片的item后,应用卡死崩溃了。查看日志发现,到后面每次有新的图片进行setspan的时候,就会进行一个累加,到十几个以后,就累加了一次需要加载十几个图片。

    带着这个问题,观察思考。

    最后发现是textview的recyclerview回收的时候,里面的span内容没有进行回收导致的。使用一下代码可以解决问题。
    onBindViewHolder中,调用textview的
    getEditable.clearspan()
    getEditable.clear()
    setText(null)
    即可解决问题。原理是在每次加载的时候,都先清空textview原来的缓存信息,然后再更新数据。

    that's all------------------------------------------------------------------------------------

    相关文章

      网友评论

        本文标题:关于recyclerview复用导致应用卡顿崩溃

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