Как истечь из кэшированного образа сети Nimbus
У меня проблемы с обновлением изображения нимба, и я не уверен, правильно ли я удаляю кэшированные изображения. После того, как я загружаю новое изображение, оно все еще продолжает показывать старое изображение в течение нескольких минут или дольше.
[(SDURLCache*)[NSURLCache sharedURLCache] removeCachedResponseForRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:url]]];
[[Nimbus imageMemoryCache] removeObjectWithName:url];
[profilePic setPathToNetworkImage:url];
Какой способ является правильным способом удалить кеш?
1 ответ
Я добавил новый метод в кэш-память Nimbus под названием removeAllObjectsWithPrefix:
, Вы можете использовать этот метод следующим образом для принудительного истечения срока действия изображений из кэша:
[imageView.imageMemoryCache removeAllObjectsWithPrefix:imageUrl];
Вам нужно будет знать URL, чтобы истечь его из кэша.
Причина, по которой этот метод необходим, заключается в том, что NINetworkImageView добавляет суффикс к ключу кэша изображения, чтобы различать разные размеры и режимы содержимого.
https://github.com/jverkoey/nimbus/blob/master/src/networkimage/src/NINetworkImageView.m#L137