【发布时间】:2015-09-21 10:26:47
【问题描述】:
我们的应用程序的图像资源很重。目前,我们没有根据服务器的设备分辨率发送图像的规定。从服务器发送的图像通常具有高分辨率(大约 900 X 900)。我有几个疑问: 1) 下载并存储在文件磁盘缓存中的图像是否会与服务器中的原始大小相同。
2) 一旦图像保存在文件磁盘缓存中,如何处理图像以将其放入内存缓存中。存储在内存缓存中的位图图像是否会根据设备分辨率转换为较低的分辨率?
3) 如果目标图像的高度和宽度未知,那么我们如何根据设备分辨率缩小位图图像?根据我们的要求,不可能为 imageview 提供固定的宽度和高度。有 resize(int, int) 方法,但问题是,在某些情况下我们无法更改图像的高度和宽度。理想情况下,应该有一些解决方案将图像尺寸缩小 %(比如说 20%)。
崩溃并不总是发生,因为它取决于内存。
【问题讨论】:
-
这不是毕加索的问题,您一定是在做大量消耗内存的工作,因此您会收到此问题。根据我的经验。这是最好的库。我用过,因为其中一个应用程序充满了来自服务器的图像。所以请检查您的代码库中是否存在任何内存泄漏