两种方法  建议用第二种

   private void getPictureSize(String path) {        /*第一种直接把bitmap加载到内存中,通过对bitmap的测量,        得出宽高,由于这个方法直接把图片引入内存,        如果图片过大,将会引发OOM;*/        //方法一:通过uri把图片转化为bitmap的方法        Bitmap bitmap = BitmapFactory.decodeFile(path);        int height = bitmap.getHeight();        int width = bitmap.getWidth();        Log.i("xg", "通过bitmap获取到的图片大小" + "width: " + width + " height: " + height);        /*bitmap.options类为bitmap的裁剪类,通过他可以实现bitmap的裁剪;        如果不设置裁剪后的宽高和裁剪比例,返回的bitmap对象将为空,        但是这个对象存储了原bitmap的宽高信息。*/        //方法二:使用Options类来获取        //inJustDecodeBounds If set to true, the decoder will return null (no bitmap)        //如果设置为空,则获取的bitmap为空,        BitmapFactory.Options options = new BitmapFactory.Options();        options.inJustDecodeBounds = true;//这个参数设置为true才有效,        Bitmap bmp = BitmapFactory.decodeFile(path, options);//这里的bitmap是个空        if (bmp == null) {            Log.e("xg", "通过options获取到的bitmap为空 ===");        }        int outHeight = options.outHeight;        int outWidth = options.outWidth;        Log.i("xg", "通过Options获取到的图片大小" + "width:" + outWidth + " height: " + outHeight);    }

更多相关文章

  1. 解决-Android: ListView.setSelection无效
  2. 异步访问----Android(安卓)AsyncTask 源码解析
  3. android 中的 window,view,activity具体关系
  4. javac错误:javac不是内部或外部命令 也不是可运行的程序 解决方法
  5. Android(安卓)Handler的基本使用
  6. Android常用的组件间通信方式
  7. (新手)Android(安卓)studio 安装:错误和解决方法(updated on 200406)
  8. AsyncTask的简单使用
  9. Android(安卓)TV热键(快捷键、组合键)实现

随机推荐

  1. Android(安卓)检测网络是否打开
  2. NDK编译Android动态链接库
  3. android调用系统程序
  4. GestureDetector 和SimpleOnGestureListe
  5. ant编译android工程用批处理打包
  6. 解决android sdk中找不到tools目录Androi
  7. 用ant实现自动打包android(二) -- android
  8. Android(安卓)6.0权限动态获取
  9. Android禁止Edittext弹出软件盘,光标依然
  10. android 开发-Process and Thread