我正在创建位图,但是在那之后,我将创建另一个带有比例尺的位图:
Bitmap originalBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.a1);
float ratio = (float) originalBitmap.getWidth() / originalBitmap.getHeight();
int h = sh/7;
int w = (int) (h * ratio);
scaledBitmap = Bitmap.createScaledBitmap(originalBitmap, w, h, true);
originalBitmap.recycle();
创建缩放的位图后可以安全地回收originalBitmap
吗?将不使用原始位图,仅将使用缩放的位图。
我问这个问题是因为我在该行中有一段评论可以讲述过去“回收位图”崩溃,但我不知道在哪种情况下。也许回收原始版本会在缩放版本中导致崩溃?
谢谢
Android文档:
public static Bitmap createScaledBitmap ( Bitmap src, int dstWidth, int dstHeight, boolean filter )
尽可能创建一个新的位图,并根据现有的位图缩放比例。如果指定的宽度和高度与源位图的当前宽度和高度相同,则返回源位图,并且不会创建新的位图。
因此,请确保缩放的位图调暗度与源位图不同。