美文网首页android内存管理
glide加载造成的一个内存抖动问题

glide加载造成的一个内存抖动问题

作者: 朱_c713 | 来源:发表于2020-04-11 09:51 被阅读0次

项目需求: 一个圆角图片的列表,GridLayoutView


项目需求.png

解决方案:使用BaseQuickAdapter 加载中利用 Glide加载圆角的方法加载图片
核心代码:

class ItemAdapter
    (data: List<VideoBean>?) :
    BaseMultiItemQuickAdapter<VideoBean, BaseViewHolder>(data) {

 

    override fun convert(helper: BaseViewHolder, item: VideoBean) {
 
        loadImage(
            mContext,
            getResUrl2(item.vod_pic!!),
            helper.getView<ImageView>(R.id.video_push_img),
            ConstantUtils.IMAGE_VIDEO_FACE
        )
 
    }


}

出现问题AndroidMoniter检测到存在内存抖动

解决方案:

   <com.makeramen.roundedimageview.RoundedImageView
                app:riv_corner_radius="9dp"
                android:id="@+id/video_push_img"
                android:layout_width="match_parent"
                android:layout_height="161dp"
                android:scaleType="fitXY"/>

内存运行平稳——抖动消失:

image.png

具体原因后续分析,但是convert会循环执行(没经过一个item,执行一次)这个是确定的,目测是glide处理的逻辑造成的。

tips: 建议以后遇到圆角图片列表的问题,采用RoundImage类似的控件做,不要作在加载里面。

相关文章

  • glide加载造成的一个内存抖动问题

    项目需求: 一个圆角图片的列表,GridLayoutView 解决方案:使用BaseQuickAdapter 加载...

  • glide加载圆角图片内存抖动

    用了一个网络上的圆角图片加载的工具加载圆角,事实上证明这种方式很坑。 /** glide Round corner...

  • glide缓存无法更新

    问题 使用glide加载图片,glide有缓存,分为内存缓存和磁盘缓存,可以通过diskCacheStrategy...

  • 性能优化

    问题:setImageResource()造成卡顿和oom解决方案:使用图片加载框架Glide加载图片

  • Glide源码解析

    问题 glide是如何进行缓存的? glide是如何多线程加载图片? glide如何进行内存管理? 为何要选择gl...

  • android 内存泄漏分析与优化(二)

    内存抖动、内存溢出、内存泄漏 内存抖动在极短的时间内,分配大量的内存,然后又释放它,这种现象就会造成内存抖动。典型...

  • Android图片加载框架——Glide

    Glide使用教程 Glide是一个快速有效的开源图像加载框架,可实现内存缓存、磁盘缓存,完成对图片资源的加载,汇...

  • 内存抖动

    造成内存抖动的原因。 频繁大量的创建对象,造成虚拟机频繁触发GC。 内存抖动有什么后果。 1.程序卡顿;2.可能回...

  • androidf Glide加载图片内存暴涨无法释放的优化记录

    Glide使用内存飙升把解决方案放到前面: 不要再ScrollView中使用Glide/Fresco加载图片,因为...

  • 当Glide搞不定GIF

    问题 使用Glide加载图片Glide.with(context).diskCacheStrategy(DiskC...

网友评论

    本文标题:glide加载造成的一个内存抖动问题

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