zoukankan      html  css  js  c++  java
  • [android]加载大量图片避免OOM

    原理是事先取得图片的长宽,直接读出缩略图.

    BitmapFactory.Options options = new BitmapFactory.Options();
            options.inPreferredConfig = Bitmap.Config.ARGB_8888; // 默认是Bitmap.Config.ARGB_8888
            // 下面两个字段需要组合使用
            options.inPurgeable = true;

    options.inInputShareable = true;

             options.inJustDecodeBounds = true;//true和false之间获得长宽和缩放比例
             BitmapFactory.decodeFile(filepath, options);
             int wRatio = (int) Math.ceil(options.outWidth /(unit_width * PtsPerUnitPic));
             int hRatio = (int) Math.ceil(options.outHeight /( unit_height * PtsPerUnitPic));
             // 如果超出指定大小,则缩小相应的比例
             if (wRatio > 1 && hRatio > 1) {
             if (wRatio > hRatio) {
             options.inSampleSize = wRatio;
             System.out.println(wRatio);
             } else {
             options.inSampleSize = hRatio;
             System.err.println(hRatio);
             }
             }else {
                return;
            }         
             options.inJustDecodeBounds = false;
     
            temp_unit_bitmap = BitmapFactory.decodeFile(filepath, options);
  • 相关阅读:
    2015-03-20——移动端UC浏览器、QQ浏览器自动全屏
    2015-03-18——mongodb的简单配置
    2015-03-12——简析DOM2级样式
    2015-03-12——简析DOM2级事件
    2015-03-11——简析DOM规范
    2015-03-10——简析javascript对象
    分页控件的编写
    Jquery添加掩盖层的插件
    正则表达式/g/i/d
    MVC请求生命周期
  • 原文地址:https://www.cnblogs.com/zeyang/p/3606033.html
Copyright © 2011-2022 走看看