2016-03-21 488 views
2

我正在使用glide库来显示图像。我设置diskCacheStrategy(DiskCacheStrategy.Source),以便图像不会清除。当我更新配置文件图片时,图像不会更新,直到我清除应用程序实例(我正在清除Glide。 clearDiskCache和Glide.clearMemory())。因此,如何强制刷新图像不清除实例。请参见下面的代码以更好地理解如何使用Glide强制刷新图像?

if(!getBoolValueForProfilePicUploading()) 
    {  glide.with(context).load(imgData.url).asBitmap().centerCrop().diskCacheStrategy(DiskCacheStrategy.SOURCE).placeholder(R.drawable.default_profilepic).error(R.drawable.default_profilepic).into(new BitmapImageViewTarget(userImageView) { 
        @Override 
        protected void setResource(Bitmap resource) { 
         RoundedBitmapDrawable circularBitmapDrawable = 
           RoundedBitmapDrawableFactory.create(context.getResources(), resource); 
         circularBitmapDrawable.setCircular(true); 
         userImageView.setImageDrawable(circularBitmapDrawable); 
        } 
       }); 
      }else 
      { 
       new LongOperation(context,imgData,userImageView).execute(); 
      } 

这是的AsyncTask背景(),

protected String doInBackground(String... params) { 
       try 
       { 
        Glide.get(context).clearDiskCache(); 
        Glide.get(context).clearMemory(); 
       }catch (Exception e) 
       { 
        e.printStackTrace(); 
       } 

       return null; 
      } 
+1

你试过'skipMemoryCache()'吗? –

+0

no.Thanks for reply。我会检查并回复你。 – Ajay

+0

方法的类名称 – Ajay

回答

1
我试过
avatar.setImageURI(null); 
avatar.setImageURI(avatarUri); 

skipMemoryCache()救了我一天。