SDから大きなビットマップをロードして回転させるこの機能があります。
しかし、2 回目または 3 回目のローテーションの後、ビットマップ サイズが 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);
ありがとう!