使用 SDWebImage加载不同图片但是图片的URL是同一个

重点是在SDWebImageManager.m文件中,大概176行左右

在(利用SDWebImageRefreshCached)的基础上,修改SD库


if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing 
downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload;
 // ignore image read from NSURLCache if image if cached but force 
refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse;
}




添加这一段代码 // remove SDWebImageDownloaderUseNSURLCache flag downloaderOptions &= ~SDWebImageDownloaderUseNSURLCache;


if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload; 没错就是这里啦 // ignore image read from NSURLCache if image if cached but force refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse;}


作者:杨大虾
链接:https://www.jianshu.com/p/3c95baccaf61
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload; 没错就是这里啦 // ignore image read from NSURLCache if image if cached but force refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse;}


作者:杨大虾
链接:https://www.jianshu.com/p/3c95baccaf61
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload; 没错就是这里啦 // ignore image read from NSURLCache if image if cached but force refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse;}


作者:杨大虾
链接:https://www.jianshu.com/p/3c95baccaf61
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload; 没错就是这里啦 // ignore image read from NSURLCache if image if cached but force refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse;}


作者:杨大虾
链接:https://www.jianshu.com/p/3c95baccaf61
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing
 downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload; 

没错就是这里啦 // ignore image read from NSURLCache if image if cached but force refreshing 
downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse; 
}


最后


if (image && options & SDWebImageRefreshCached) { // force progressive off if image already cached but forced refreshing 
downloaderOptions &= ~SDWebImageDownloaderProgressiveDownload;
 // remove SDWebImageDownloaderUseNSURLCache flag 
downloaderOptions &= ~SDWebImageDownloaderUseNSURLCache; // ignore image read from NSURLCache if image if cached but force 
refreshing downloaderOptions |= SDWebImageDownloaderIgnoreCachedResponse; 
}

第二种解决方法,是通过改变“额外的header”来实现的

iOS开发~SDWebImage是如何做到Url不变的情况下,更新图片内容的

你可能感兴趣的:(使用 SDWebImage加载不同图片但是图片的URL是同一个)