1. 程式人生 > >Android整合Glide(支援回撥)

Android整合Glide(支援回撥)

背景

Glide是當前非常流程的圖片載入框架,功能強大而且非常穩定。

整合指導

最簡整合方式

1.dependencies中增加依賴

implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
  1. Manifest檔案中增加許可權
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

3.使用
樣例1:

String url = "https://p3a.pstatp.com/weili/l/79054173089494582.jpg";
Context context = this;
Glide.with(context)
       .load(url)
       .into(imageView);

樣例2(帶回調,使用樣例:載入完圖片再顯示出圖片控制元件):

String url = "https://p3a.pstatp.com/weili/l/79054173089494582.jpg";
Context context = this;
Glide.with(context)
       .load(url)
       .listener(new RequestListener<Drawable>() {
           @Override
           public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
               Toast.makeText(context, "載入失敗!", Toast.LENGTH_SHORT).show();
               return false;
           }

           @Override
           public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
               Toast.makeText(context, "載入成功.", Toast.LENGTH_SHORT).show();
               return false;
           }
       })
       .into(imageView);

自定義Module整合方式

此種方式為了專案實際需要,改變Glide的預設行為。因還未完整使用過,暫不展開了,請參考附錄的資料。

附錄

https://blog.csdn.net/guolin_blog/article/details/53759439?utm_source=tuicool&utm_medium=referral
https://blog.csdn.net/mingyunxiaohai/article/details/79760784
https://www.jianshu.com/p/90b4749e59d2