我有这个功能,可以从 SD 加载一个大位图并旋转它。
然而,在第二次或第三次旋转后,我得到一个位图大小超出 VM 预算错误。
任何想法为什么?我确实回收旧位图,不是吗?
public void next(String s, int d)
{
if ( mBitmap!=null ) { mBitmap.recycle(); }
deg = deg + d;
mBitmap = BitmapFactory.decodeFile(s);
Matrix matrix = new Matrix();
matrix.postRotate(deg);
mBitmap = Bitmap.createBitmap(mBitmap, 0, 0, mBitmap.getWidth() , mBitmap.getHeight(), matrix, true);
谢谢!