android位图大小依赖性基于分辨率或文件大小

时间:2015-03-14 06:57:05

标签: android bitmap

我有两个jpg图像。一个图像大小约为1 MB,另一个图像大小低于100KB。但两个图像都具有相同的resolutiuon。现在这些图像应该加载到imageview中。加载这些图像时的内存分配将取决于文件大小或分辨率?

1 个答案:

答案 0 :(得分:1)

取决于分辨率,而不是文件大小。加载后图像将被解压缩到内存中,因此相同分辨率的两个图像将使用相同的内存量。

您可以使用getByteCount()getAllocationByteCount()(KitKat及以上版本)验证加载到ImageView中的位图的内存使用情况。

e.g:

ImageView image = (ImageView)findViewById(R.id.image1);
int bytesUsed = ((BitmapDrawable)image.getDrawable()).getBitmap().getAllocationByteCount();