Android Glide圖片加載庫基礎使用詳解

前言

圖片加載在 Android開發項目中是必不可少的,爲了下降開發週期和難度,咱們常常會選用一些圖片加載的開源庫,而Android發展到如今圖片加載開源庫也愈來愈多了,下面介紹 Glide開源圖片加載庫.android

簡介

Glide是由Google開源的一個圖片加載庫,是一款快速高效的Android開源媒體管理和圖像加載框架,它將媒體解碼,內存和磁盤緩存以及資源池包裝成簡單易用的界面.git

功能介紹以及基礎使用

1.配置

  • 在Project的gradle添加依賴
repositories {
  mavenCentral()
  google()
}
複製代碼
  • 在Module的gradle添加依賴
dependencies {
  implementation 'com.github.bumptech.glide:glide:4.9.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}
複製代碼
  • 添加網絡權限
<uses-permission android:name="android.permission.INTERNET"/>
複製代碼
  • 基本使用
ImageView mImageView = (ImageView) findViewById(R.id.ImageView);
        String Url = "http://***********";

        Glide .with(this)
                .load(Url)
                .into(targetImageView);
複製代碼

2.基本功能介紹&使用

  • 圖片的異步加載(基礎功能)
ImageView mImageView = (ImageView) findViewById(R.id.ImageView);
        String Url = "http://**********";

//Glide使用了流式接口的調用方式
        Glide.with(context).load(Url).into(targetImageView);

複製代碼
  • 設置圖片加載尺寸
Glide.with(this).load(imageUrl).override(500, 500).into(imageView);
複製代碼
  • 設置加載中以及加載失敗圖片
Glide
 .with(this)
  .load(imageUrl)
 .placeholder(R.mipmap.ic_launcher).error(R.mipmap.ic_launcher).into(imageView);
複製代碼
  • 設置加載動畫
Glide.with(this).load(imageUrl).animate(R.anim.item_alpha_in).into(imageView);
複製代碼
  • 設置要加載的內容(圖文混排)
Glide.with(this).load(imageUrl).centerCrop().into(new SimpleTarget<GlideDrawable>() {
            @Override
            public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
                imageView.setImageDrawable(resource);
            }
        });
複製代碼
  • 多樣式的媒體加載
Glide
        .with(context)
        .load(imageUrl);
        .thumbnail(0.1f);//設置縮略圖支持:先加載縮略圖 (原圖像的10%)而後在加載全圖
素。
        .asBitmap()//顯示gif靜態圖片 
        .asGif();//顯示gif動態圖片
        .into(imageView);
複製代碼
  • 設置磁盤緩存策略
Glide.with(this).load(imageUrl).diskCacheStrategy(DiskCacheStrategy.ALL).into(imageView);

// 緩存參數說明
// DiskCacheStrategy.NONE:不緩存任何圖片,即禁用磁盤緩存
// DiskCacheStrategy.ALL :緩存原始圖片 & 轉換後的圖片(默認)
// DiskCacheStrategy.SOURCE:只緩存原始圖片(原來的全分辨率的圖像,即不緩存轉換後的圖片)
// DiskCacheStrategy.RESULT:只緩存轉換後的圖片(即最終的圖像:下降分辨率後 / 或者轉換後 ,不緩存原始圖片
複製代碼
  • 清理緩存
Glide.get(this).clearDiskCache();//清理磁盤緩存 須要在子線程中執行 
Glide.get(this).clearMemory();//清理內存緩存 能夠在UI主線程中進行
複製代碼
  • 生命週期集成
Glide.with(Context context)// 綁定Context
        .with(Activity activity);// 綁定Activity
        .with(FragmentActivity activity);// 綁定FragmentActivity
        .with(Fragment fragment);// 綁定Fragment
複製代碼

至此,Glide圖片加載庫基礎使用就講解完畢了,感謝閱讀github

歡迎關注做者darryrzhong,更多幹貨等你來拿喲.segmentfault

請賞個小紅心!由於你的鼓勵是我寫做的最大動力!

更多精彩文章請關注緩存

相關文章
相關標籤/搜索