您的位置:首页 > 移动开发 > Android开发

Android之Glide获取图片Path和Glide获取图片Bitmap

2017-12-11 16:43 501 查看
今天主要研究了Glide获取图片Path、Bitmap用法,相信也困扰了大家很久,我在网上也找了很久,基本没有,后来研究了下,也参考了下api文档,总结了以下几个方式:

1. 获取Bitmap:

1)在图片下载缓存好之后获取

[java]
view plain
copy

Glide.with(mContext).load(url).asBitmap().into(new SimpleTarget<Bitmap>() {  
                @Override  
                public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {  
                    image.setImageBitmap(resource);  
                }  
            }); //方法中设置asBitmap可以设置回调类型  

上面是简单方法,下面有全面的方法,可以完美控制:

[java]
view plain
copy

Glide.with(mContext).load(url).asBitmap().into(new Target<Bitmap>() {  
                @Override  
                public void onLoadStarted(Drawable placeholder) {  
                      
                }  
  
                @Override  
                public void onLoadFailed(Exception e, Drawable errorDrawable) {  
  
                }  
  
                @Override  
                public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {  
                     //TODO set bitmap  
                }  
  
                @Override  
                public void onLoadCleared(Drawable placeholder) {  
  
                }  
  
                @Override  
                public void getSize(SizeReadyCallback cb) {  
  
                }  
  
                @Override  
                public void setRequest(Request request) {  
  
                }  
  
                @Override  
                public Request getRequest() {  
                    return null;  
                }  
  
                @Override  
                public void onStart() {  
  
                }  
  
                @Override  
                public void onStop() {  
  
                }  
  
                @Override  
                public void onDestroy() {  
  
                }  
            });  

2)通过url获取

[java]
view plain
copy

Bitmap myBitmap = Glide.with(applicationContext)  
    .load(yourUrl)  
    .asBitmap() //必须  
    .centerCrop()  
    .into(500, 500)  
    .get()  

2. 获取图片缓存路径

[java]
view plain
copy

FutureTarget<File> future = Glide.with(mContext)  
                    .load("url")  
                    .downloadOnly(5
9b3e
00, 500);  
            try {  
                File cacheFile = future.get();  
                String path = cacheFile.getAbsolutePath();  
            } catch (InterruptedException e) {  
                e.printStackTrace();  
            } catch (ExecutionException e) {  
                e.printStackTrace();  
            }  

注意:这段代码需要在线程中执行,否则会报错。

来自:http://blog.csdn.net/qq_19711823/article/details/50856236
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 图片