您好,登錄后才能下訂單哦!
億速云在此之前給大家介紹過圖片加載框架Glide的基本用法介紹,大家可以先參考一下,本篇內容更加深入的分析了Glide獲取圖片Path、Bitmap用法,以及實現的代碼分析。
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); } }); //方法中設置<span >asBitmap可以設置回調類型</span>
上面是簡單方法,下面有全面的方法,可以完美控制:
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()
2. 獲取圖片緩存路徑
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(); }
注意:這段代碼需要在線程中執行,否則會保存,目前我還沒整理出統一的方法回調,回頭再研究研究。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。