iOS – SDWebImage 设置头像时遇到的问题

释放双眼,带上耳机,听听看~!

今天发现项目中用SDWebImage 设置头像的时候,头像网址相同时 调用 SDWebImageRefreshCached 有时并不会刷新头像 代码如下

[_headImageView sd_setImageWithURL:[NSURL URLWithString:_headPic] placeholderImage:[UIImage imageNamed:@”defaultHeadPic”] options:SDWebImageRefreshCached];

就用GCD自己写了一段代码替换掉,代码如下

  1. dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ // 1

  2.     NSURL *url = [NSURL URLWithString:_headPic];

  3.                

  4.     // NSURLRequestReloadIgnoringLocalAndRemoteCacheData 表示忽略本地和服务器的 缓存文件 直接从原始地址下载图片 缓存策略的一种

  5.     NSURLRequest *re = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalAndRemoteCacheData timeoutInterval:60];

  6.     NSData *received = [NSURLConnection sendSynchronousRequest:re returningResponse:nil error:nil];

  7.     UIImage *overlayImage = [UIImage imageWithData:received];

  8.     dispatch_async(dispatch_get_main_queue(), ^{ // 2

  9.           cell.pic.image = overlayImage; // 3

  10.     });

  11. });

  12. //下面是 SD_WebImage 的方法(用下面的方法在我们的服务器上下载的图片有时不是最新的因此用上面的GCD 实现

  13. //[cell.pic sd_setImageWithURL:[NSURL URLWithString:_headPic] placeholderImage:[UIImage imageNamed:@"defaultHeadPic"] options:SDWebImageRefreshCached];

 

人已赞赏
iOS文章

iOS 字符串处理:截取,分隔,匹配等处理

2019-9-21 22:10:25

iOS文章

iOS-可拉伸放大的UITableView头部视图

2019-9-21 22:46:19

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索