对于 Android,在将图像加载到内存中以确保我们不会超出我们通常执行的 RAM 限制
BitmapFactory.Options bounds = new BitmapFactory.Options();
bounds.inJustDecodeBounds = true;
然后解码位图以找到它的宽度,我们可以根据它来决定是否采样。
我的问题是,如果我们从本地存储(SD 卡)加载位图,我们不能得到位图的文件位置:
File file = new File(mPathToFile);
然后检查
if(file.length()>MAX){
sampleSize = 2;//2 is just an example
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = sampleSize;
bitmap = BitmapFactory.decodeFile(mPathToFile, options);
}
这是错的吗?愚蠢的?