毕加索没有下载高分辨率图像

时间:2016-11-29 14:05:20

标签: android

我在gridview上有3个URL,3个图像中只有2个加载到ImageView中。

我正在使用Picaso:

Picasso.with(c).load(imageUrl).placeholder(R.drawable.progress_animation).fit().centerCrop().into(ivPicture);

我也试图跳过缓存:

Picasso.with(c).load(imageUrl).placeholder(R.drawable.progress_animation).fit().centerCrop().memoryPolicy(MemoryPolicy.NO_CACHE, MemoryPolicy.NO_STORE).into(ivPicture);

附加图片信息:

  • 宽度2048 /高度1371像素
  • 文件大小= 224KB
  • 文件格式为JPG

当我使用Picasso的.resize(h w)来降低分辨率时,例如:调整大小(100 100)用于测试图像,但不保留宽高比,因为有些图像会有9:6比例或反之亦然6:9或5:5的完美正方形,因此我不想将任何图像调整为固定比例,而是使用.fit().centerCrop()除了这个1高分辨率图像,毕加索之外效果非常好只是无限地加载占位符而没有任何错误,我可以理解像素是否太多但文件大小非常小我不知道为什么毕加索正在努力下载+/- 200KB图像。

毕加索有没有办法在某些像素上压缩图像呢?

1 个答案:

答案 0 :(得分:0)

Picasso无法处理非常大的图像,因为会收到内存不足。你必须在本机代码中进行图像转换。不在java中