bitmapfactory.decodefile 内存溢出(OOM)问题解决方案
来源:互联网 发布:windows nas 方案 编辑:程序博客网 时间:2024/05/21 01:32
今天遇到一个OOM问题,上网查找相关资料,最后写了一个方法,以供参考:
//absolutePath是图片绝对路径private void adjustImage(String absolutePath,Bitmap bm) {BitmapFactory.Options opt = new BitmapFactory.Options();// 这个isjustdecodebounds很重要opt.inJustDecodeBounds = true;bm = BitmapFactory.decodeFile(absolutePath, opt);// 获取到这个图片的原始宽度和高度int picWidth = opt.outWidth;int picHeight = opt.outHeight;// 获取屏的宽度和高度WindowManager windowManager = getWindowManager();Display display = windowManager.getDefaultDisplay();int screenWidth = display.getWidth();int screenHeight = display.getHeight();// isSampleSize是表示对图片的缩放程度,比如值为2图片的宽度和高度都变为以前的1/2opt.inSampleSize = 1;// 根据屏的大小和图片大小计算出缩放比例if (picWidth > picHeight) {if (picWidth > screenWidth)opt.inSampleSize = picWidth / screenWidth;} else {if (picHeight > screenHeight)opt.inSampleSize = picHeight / screenHeight;}// 这次再真正地生成一个有像素的,经过缩放了的bitmapopt.inJustDecodeBounds = false;bm= BitmapFactory.decodeFile(absolutePath, opt);// 用imageview显示出bitmapimageView.setImageBitmap(bm);}
0 0
- bitmapfactory.decodefile 内存溢出(OOM)问题解决方案
- BitmapFactory.decodeFile图片过大内存溢出
- BitmapFactory.decodeFile内存溢出和变相解决方案
- BitmapFactory.decodeFile
- android中解决内存溢出(OOM)方案
- Android 解决BitmapFactory.decodeFile(file) 报OOM问题
- android 内存溢出问题解决方案
- eclipse内存溢出问题解决方案
- android jxl OOM内存溢出问题解决(适用大部分内存溢出)
- OOM(内存溢出)解决方案
- OOM内存溢出(转)
- 【Android性能优化】内存泄露和内存溢出(OOM)的引发原因及优化方案
- 【Android性能优化】内存泄露和内存溢出(OOM)的引发原因及优化方案
- 【Android性能优化】内存泄露和内存溢出(OOM)的引发原因及优化方案
- 【Android性能优化】内存泄露和内存溢出(OOM)的引发原因及优化方案
- android之 BitmapFactory.Options避免内存溢出OOM的优化方法
- BitmapFactory 方法:decodeFileDescriptor()、decodeFile()
- BitmapFactory.decodeFile返回NULL
- Android加载大图(二)
- iOS学习之——关于何时使用storyborad和xib
- 自定义ViewPager,广告条目可点击和广告图片宽高自适应。
- linux、windows中ping大数据包的命令格式
- linux下对文件的读写操作
- bitmapfactory.decodefile 内存溢出(OOM)问题解决方案
- android 获取sim一些信息方法如下:
- iOS中需要查询的设备号, 型号
- 走进VR游戏开发的世界
- viewDidLoad, viewWillDisappear, viewWillAppear等区别及各自的加载顺序
- boost asio 中io_service stop函数注意
- excel 将隔行空白单元格填充为最靠近上面且有值的单元格的数据
- Eclipse下.project和.classpath作用
- php使用yum安装的,但是找不到phpize,因为需要用到phpize安装redis