Fresco加载图片优化

今天在使用应用时发现,应用居然崩溃了!一看监听器发现,当列表滚动到底部后内存达到了63M以上后必定崩溃,以前怎么就没崩溃呢?怪事了,但是内存这么大肯定是有问题的!还是得解决一下内存高的问题。

优化方法是:

public static void displayImage(Uri uri, SimpleDraweeView draweeView){    
        ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uri) 
           .setResizeOptions(new ResizeOptions(DensityUtil.dip2px(120), DensityUtil.dip2px(120)))            
            .build();    

        DraweeController controller = Fresco.newDraweeControllerBuilder()              
          .setImageRequest(request)            
          .setOldController(draweeView.getController())                      
           .build();   
       draweeView.setController(controller);
  }
也就是对图片进行一个大小限制setImageRequest();,然后设置setOldController();再运行发现,当列表滚动到底部后内存居然只有20M左右了,很好!

另外,还需配置Fresco支持jpeg和png、webp等图片:

ImagePipelineConfig config = ImagePipelineConfig.newBuilder(this)     
     .setDownsampleEnabled(true)        
      .build();
Fresco.initialize(this, config);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文韬_武略

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值