今天分享下Glide加载图片的番外篇,获取图片的宽高;
如果是本地图片的话,我们可以用BitmapFactory获取到图片的宽高,下面上代码
public static int getImageWidth(String pathUrl) { BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; Bitmap bitmap = BitmapFactory.decodeFile(pathUrl, options); return options.outWidth;//options.outHeight; }
但是我们要是获取网络图片的话,就有点困难了,因为我们需要把图片下载后才能知道其大小;
万万没想到用Gldie不仅可以获取本地图片的宽高,获取网络图片也是没问题的;
Glide.with(context) .load(pathUrl) .asBitmap()//Glide返回一个Bitmap对象 .into(new SimpleTarget<Bitmap>() { @Override public void onResourceReady(Bitmap bitmap, GlideAnimation<? super Bitmap> glideAnimation) { bitmap.getWidth() bitmap.getHeight() } });
这样我们就可以直接获取网络图片的宽高了,这里我必须吐槽下iOS的开发小伙伴,他们找不到获取网络图片的方法就非要我们在上传图片的时候加上图