android中imageview图片旋转出错,请大神看下

2024-12-14 19:31:58
推荐回答(3个)
回答1:

程序报的错误是java.lang.OutOfMemoryError: bitmap size exceeds VM budget么?除了这个其他地方没什么错,在Bitmap resizeBmp = Bitmap.createBitmap(bmp,0,0,w,h,mt,true);
iv.setImageBitmap(resizeBmp);这里注意resizeBmp的recycle();
不过我不太会用recycle(),所以我的做法是用下面这几句代替:
WeakReference wr = new WeakReference(Bitmap.createBitmap(bmp, 0, 0, w, h, mt, true));
iv.setImageBitmap(wr.get());
System.gc();
希望对你有所帮助:)

回答2:

内存溢出问题BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inSampleSize =4;
bitmap=BitmapFactory.decodeByteArray(data, 0, data.length, opts);

回答3:

代码没问题,应该是你图片资源太大了,造成内存溢出。