2016-03-21 48 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()救了我一天。