android - 从服务器正确下载和显示图像

标签 android picasso android-glide fresco

现在,在我的应用程序中,每个占位符都有大小,它是在 xml 中设置的,下载图像后它会调整 ImageView 的高度,视觉效果很糟糕。

如何获取正在下载的图片大小,应该显示在 ImageView,使占位符大小与 Facebook 应用程序实时提要中的大小相同?也许我应该在从服务器下载的 json 文件中包含每个链接的图像比例,或者 FrescoGlidePicasso 有一些技巧可以实现这?

最佳答案

如果您想在下载图像之前将占位符调整为实际图像尺寸,您必须以某种方式从您的服务器获取此信息。就像您已经建议的那样,您可以在请求中包含图像尺寸/宽高比,然后使用该信息预先适当调整 View 大小。

由于您提到的这种可怕的视觉效果,Fresco 不支持 wrap_content 但它支持为您可以使用服务器数据设置的 DraweeView 设置宽高比。

另见 http://frescolib.org/docs/wrap-content.html

关于android - 从服务器正确下载和显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43715479/

相关文章:

android - Android 库中的属性名称是否需要前缀?

android - 使用 Gradle 更改 apk 名称

android - 是否可以通过 Android 应用记录电话?

android:load svg file from web and show it on image view

android - Picasso for android 主要报错

java - RecyclerView 中的属性动画

android - 如何在 wifi 关闭时使用 picasso 图像加载器从缓存中显示图像?

android - 使用 Glide 库时出现异常

Android:IllegalArgumentException:无法找到包含/data/data/的已配置根目录

android - 突然 Glide 无法从 url 获取图像