glide 使用簡單介紹 和 緩存 監聽 變化方法

一 ,包模塊引入。

as使用

dependencies {
  implementation 'com.github.bumptech.glide:glide:4.9.0'
  annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
}

idea maven使用

<dependency>
  <groupId>com.github.bumptech.glide</groupId>
  <artifactId>glide</artifactId>
  <version>4.9.0</version>
</dependency>
<dependency>
  <groupId>com.github.bumptech.glide</groupId>
  <artifactId>compiler</artifactId>
  <version>4.9.0</version>
  <optional>true</optional>
</dependency>

eclipse 使用下載jar包導入即可

https://download.csdn.net/download/qq_36355271/11145553

二,代碼

1,imageview的使用
// For a simple view: 
@Override public void onCreate(Bundle savedInstanceState) {
  ...
  ImageView imageView = (ImageView) findViewById(R.id.my_image_view);

  Glide.with(this).load("http://goo.gl/gEgYUd").into(imageView);
}

2,listview等列表的使用
// For a simple image list:
@Override public View getView(int position, View recycled, ViewGroup container) {
  final ImageView myImageView;
  if (recycled == null) {
    myImageView = (ImageView) inflater.inflate(R.layout.my_image_view, container, false);
  } else {
    myImageView = (ImageView) recycled;
  }

  String url = myUrls.get(position);

  Glide
    .with(myFragment)
    .load(url)
    .centerCrop()
    .placeholder(R.drawable.loading_spinner)
    .into(myImageView);

  return myImageView;
}

 

3,緩存處理等複雜處理 

 RequestOptions options = new RequestOptions()
                .placeholder(R.drawable.ic_launcher_background)//佔位圖/默認圖片
                .error(R.drawable.error)//加載失敗 佔位圖
                .override(200, 100) //設置加載圖片大小  override(Target.SIZE_ORIGINAL)加載原始大小
                .skipMemoryCache(true);//禁用內存緩存
                .diskCacheStrategy(DiskCacheStrategy.NONE);//禁用硬盤緩存  默認自動緩存


        Glide.with(this)//建議傳入 activity 或者fragment 對象  可以使圖片加載和活動生命週期同步
                .load(url)//圖片地址 也可以是gif等動圖
                .apply(options)//設置佔位圖
//                .into(imageView);//顯示目標view
                .into(simpleTarget);//圖片加載監聽

        SimpleTarget<Drawable> simpleTarget = new SimpleTarget<Drawable>() {

            @Override

            public void onResourceReady(Drawable resource, Transition<? super Drawable> transition) {

                imageView.setImageDrawable(resource); //返回圖片對象

            }

        };

圖片變換 的方法 移動 裁剪等

RequestOptions options = new RequestOptions()

        .transforms(...);

RequestOptions options = new RequestOptions()

        .centerCrop();



RequestOptions options = new RequestOptions()

        .fitCenter();



RequestOptions options = new RequestOptions()

        .circleCrop();

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章