【问题标题】:Details About Glide Library关于 Glide 库的详细信息
【发布时间】:2015-10-05 12:30:30
【问题描述】:

我正在使用Glide 库并想了解有关它的更多详细信息。它是否会将整个图片加载到内存中,例如,如果我有一张 1920x1080 的图片并将其加载到屏幕尺寸为640x480 是否会调整大小并压缩或加载整个内容?

还有 glide 的缩略图功能,它是否只是加载图像的图标版本,以便它可以用于像头像这样的东西?

【问题讨论】:

    标签: android image resize compression android-glide


    【解决方案1】:

    1) 取决于所选的 diskCacheStrategy Glide 保存或原始图像(在您的情况下为 1920x1080)或为每个视图单独处理的图像(例如使用 .override(int width, int height) 方法)。 Glide 为您做的唯一优化是以 RGB_565 格式而不是系统默认的 ARGB_8888 格式存储图像。

    如果您正在寻找减少流量和内存消耗的策略,这里是对模型的描述以及下载自定义尺寸的图像:

    backend requirements

    android client implementation

    2) 缩略图功能 - 它只是在下载最终图像时使用原始图像的缩小副本填充容器视图的选项,用于显示空容器或“进度视图”。以下是 Java doc thumbnail(float f) 中对其规则的描述:

    * Loads a resource in an identical manner to this request except with the dimensions of the target multiplied
    * by the given size multiplier. If the thumbnail load completes before the fullsize load, the thumbnail will
    * be shown. If the thumbnail load completes afer the fullsize load, the thumbnail will not be shown.
    

    所以它不适合头像样式。通常的方法是结合 override 和 centerCrop 选项。

    【讨论】:

    • 我使用 glide 从图库中加载图像并将其显示在应用程序的图像视图中,使用覆盖似乎没有太大区别,所以我应该只使用 inSampleSize 来缩放图像,然后手动显示它,或者可以滑动为我做这个缩放,或者有没有其他库可以处理这个?
    • 是的,在这种情况下,您可以使用 inSampleSize 并通过修改 android:scaleType 参数来更改视图外观。以这种方式 Glide 将仅用作加载图像的简单安全工具。
    • 我也是这么想的,如果有其他意见,我会将问题保持一段时间,否则我会将您的意见标记为正确的。
    最近更新 更多