zoukankan      html  css  js  c++  java
  • Glide和Picasso的区别

    首先简单的介绍下两个库的出身:

    Picasso是Square公司出品的一款非常优秀的开源图片加载库
    Glide是由Google开发,基于 Picasso,依然有保存了Picasso的简洁风格,但是在此做了大量优化与改进。
    具体的使用方法这里就不详细介绍了,这里重点说区别,主要体现在下面几个方面:

    1. 库的大小和方法的数量
    Glide 要比 Picasso 大很多,基本上是 Picasso 的3.5倍

    2. 缓存方式
    Glide 默认的 Bitmap 格式是 RGB_565 格式,而Picasso默认的是 ARGB_8888 格式,这个内存开销要小一半。

    在磁盘缓存方面,Picasso只会缓存原始尺寸的图片,而 Glide 缓存的是多种规格,也就意味着 Glide会根据你ImageView的大小来缓存相应大小的图片尺寸,比如你ImageView大小是200*200,原图是 400*400,而使用Glide 就会缓存 200*200规格的图,而Picasso只会缓存 400*400 规格的。这个改进就会导致 Glide 比 Picasso 加载的速度要快

    3. 加载图片速度
    当内存中不存在时,Picasso会比Glide快一点,可能的原因是缓存机制导致,因为Picasso是直接把图加载到内存中,而Glid 则需要改变图片大小再加载到内存中去,这个应该是会耗费一定的时间。

    但是,当加载的图片在内存中时,Glide 则比 Picasso 要快。其原理还是因为缓存机制的区别,因为Picasso 从内存中拿到的图片,还要先去 resize 后,然后设定给 imageView,但是 Glide 则不需要这样。

    4. 生命周期
    Glide 相比 Picasso 的一大优势是它可以和 Activity 以及 Fragment 的生命周期相互协作,我们在调用 Glide.with() 函数时可以将 Activity 或者 Fragment 的实例传进去,这样 Glide 就会自动将图片加载等操作和组件的生命周期关联起来。

    5. Glide可以加载视频缩略图

    6. Glide 支持 GIF动态图
    ---------------------
    作者:孤独的冥王星
    来源:CSDN
    原文:https://blog.csdn.net/zyw0101/article/details/80385494
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    HTML5学习
    Python随手记
    Python学习之warn()函数
    Redis学习
    多线程--wait()和notify(),Thread中的等待和唤醒方法
    Interrupt中断线程注意点
    Thread中yield方法
    mysql创建唯一索引,避免数据重复插入
    Jquery自动补全插件的使用
    linux ssh免密登陆远程服务器
  • 原文地址:https://www.cnblogs.com/wytiger/p/10642154.html
Copyright © 2011-2022 走看看