0

我在刷新 nimbus 图像时遇到问题,并且不确定我是否正确删除了缓存的图像。在我上传新图像后,它仍然会在刷新时显示旧图像几分钟或更长时间。

[(SDURLCache*)[NSURLCache sharedURLCache] removeCachedResponseForRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:url]]];

[[Nimbus imageMemoryCache] removeObjectWithName:url];

[profilePic setPathToNetworkImage:url];

哪种方法是删除缓存的正确方法?

4

1 回答 1

0

我在 Nimbus 的内存缓存中添加了一个新方法,称为removeAllObjectsWithPrefix:. 您可以通过以下方式使用此方法强制使缓存中的图像过期:

[imageView.imageMemoryCache removeAllObjectsWithPrefix:imageUrl];

您需要知道 url 才能使其从缓存中过期。

之所以需要这种方法,是因为NINetworkImageView为图像缓存键添加了后缀,以区分不同的大小和内容模式。

https://github.com/jverkoey/nimbus/blob/master/src/networkimage/src/NINetworkImageView.m#L137

于 2012-06-11T00:41:42.230 回答