美文网首页android技术
Android之Glide获取图片Path、Bitmap用法

Android之Glide获取图片Path、Bitmap用法

作者: hao_developer | 来源:发表于2021-03-19 14:23 被阅读0次
  1. 获取Bitmap:

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

Glide.with(mContext).load(url).asBitmap().into(new SimpleTarget<Bitmap>() {  
     @Override  
      public void onResourceReady(Bitmap resource, GlideAnimation<? super Bitmap> glideAnimation) {  
            image.setImageBitmap(resource);  
      }  
}); 

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

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获取,这个需要放到线程中执行

Bitmap myBitmap = Glide.with(applicationContext)
    .load(yourUrl)
    .asBitmap() //必须
    .centerCrop()
    .into(500, 500)
    .get()
  1. 获取图片缓存路径
FutureTarget<File> future = Glide.with(mContext)
      .load("url")
      .downloadOnly(500, 500);
try {
        File cacheFile = future.get();
        String path = cacheFile.getAbsolutePath();
} catch (InterruptedException e) {
       e.printStackTrace();
} catch (ExecutionException e) {
      e.printStackTrace();
}

相关文章

网友评论

    本文标题:Android之Glide获取图片Path、Bitmap用法

    本文链接:https://www.haomeiwen.com/subject/lxlpcltx.html