gpt4 book ai didi

java - 三星 Galaxy S3 中缩放位图失败

转载 作者:太空宇宙 更新时间:2023-11-04 15:23:02 25 4
gpt4 key购买 nike

感谢您之前的支持。目前我正在开发一个项目,我需要调整从服务器下载的图像的大小。图像具有较大的分辨率,因此我想根据设备的屏幕尺寸调整大小。下面是我的代码。请看一下。

                    // decode image size initially
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;
FileInputStream stream1 = new FileInputStream(f);
BitmapFactory.decodeStream(stream1, null, o);
stream1.close();

// Find the correct scale value.
int width_tmp = o.outWidth, height_tmp = o.outHeight;
int scale = 1;
while (true) {
if (width_tmp / 2 < REQUIRED_SIZE
|| height_tmp / 2 < REQUIRED_SIZE)
break;
width_tmp /= 2;
height_tmp /= 2;
scale *= 2;
}

// decode with inSampleSize
BitmapFactory.Options o2 = new BitmapFactory.Options();
o2.inSampleSize = scale;
FileInputStream stream2 = new FileInputStream(f);
Bitmap bitmap = BitmapFactory.decodeStream(stream2, null, o2);
stream2.close();

但是,一旦我获得了所需的比例,对于三星 Galaxy S3,它会在代码末尾找到一个空位图。它在模拟器、三星 Galaxy S4、Htc one v 上运行良好。我还担心代码的通用性,因此它应该在每个设备上运行。

如果有人有解决此类问题的经验,请告诉我。

最佳答案

您的 REQUIRED_SIZE 值是多少?设置为1024。因为可能是由于解码大分辨率图像时出现内存不足异常。

关于java - 三星 Galaxy S3 中缩放位图失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20210092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com