我正在尝试编写简单的应用程序,我可以在照片之间滑动(就像每个设备上的标准图库应用程序一样)。标准的一个表现出令人印象深刻的性能 - 它立即显示下一张照片,而只需要大约15 MB的内存它似乎将下一个和上一个图像保存在内存中,因此它不会因为从SD卡加载它们而产生延迟。我认为如果应用程序在内存中保留至少3个这样大小的Bitmap
个对象,则需要15 MB以上。它是如何工作的?不要使用Bitmap
或什么?谢谢。
答案 0 :(得分:1)
请记住,屏幕上的位图可能不是原始文件的大小。
以720p屏幕为例,4096 * 3072图片将被解码并重新调整为屏幕尺寸。
即使APP可能正在使用ARGB8888格式来显示位图,内存大小为1280 * 720 * 4 = 3686400字节,即大约3.5M。
如果我们使用RGB565格式,那么尺寸将会小一半。
更重要的是,并非所有图片都是“全屏”。