我有一个带有自定义 uitableviewcell 的 uitableview;单元格由一个图像和几个标签组成 图像是使用这种方法远程下载的
[SDWebImageDownloader downloaderWithURL:[NSURL URLWithString:url] delegate:self];
我使用上述方法而不是以下方法:[cell.imageView setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"] placeholderImage:[UIImage imageNamed:@"placeholder. png"]];
(参考https://github.com/rs/SDWebImage)因为我需要在下载图像后进行一些后期处理。因为 SDWebImageDownloader 在图像完成加载时有一个回调方法,这就是我使用它的原因。
如果我做
[cell.imageView setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
[后期处理图片]
有可能我在完全下载之前对图像进行后处理,无论如何这不是问题,只是让你知道上下文
在做了一些研究之后,saome 说我应该取消加载请求......但我不知道这是否会有所帮助,而且我不知道如何区分我应该真正加载哪个以及应该取消哪些
我的问题是,当使用 SDWebImageDownloader 时,当滚动 uitableview 时,图像会闪烁,闪烁的方式是,您会看到图像缓慢加载并从上一个图像更改为另一个图像,最后它确实加载了正确的图像,但是不希望闪烁
似乎导致问题的原因是对 SDWebImageDownloader 的调用,而不是对我正在执行的图像的后处理导致延迟或闪烁,因为在 SDWebImageDownloader 回调中,如果我只是分配图像,闪烁仍然会发生。
我别无选择,只能使用 SDWebImageDownloader,因为我需要调整图像大小......谁能告诉我如何避免闪烁?谢谢