allow imageRequestOperation to be cancelled
This commit is contained in:
parent
714ccc1905
commit
bd6fc88c01
1 changed files with 13 additions and 8 deletions
|
|
@ -87,6 +87,9 @@ static NSString * const kUIImageViewImageRequestObjectKey = @"imageRequestOperat
|
||||||
block:(void (^)(UIImage *image))block
|
block:(void (^)(UIImage *image))block
|
||||||
{
|
{
|
||||||
if (!url) {
|
if (!url) {
|
||||||
|
// stop loading image
|
||||||
|
[self.imageRequestOperation cancel];
|
||||||
|
self.imageRequestOperation = nil;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -105,6 +108,7 @@ static NSString * const kUIImageViewImageRequestObjectKey = @"imageRequestOperat
|
||||||
self.image = placeholderImage;
|
self.image = placeholderImage;
|
||||||
|
|
||||||
self.imageRequestOperation = [AFImageRequestOperation operationWithRequest:request imageSize:imageSize options:options success:^(UIImage *image) {
|
self.imageRequestOperation = [AFImageRequestOperation operationWithRequest:request imageSize:imageSize options:options success:^(UIImage *image) {
|
||||||
|
if (self.imageRequestOperation && ![self.imageRequestOperation isCancelled]) {
|
||||||
if ([[request URL] isEqual:[[self.imageRequestOperation request] URL]]) {
|
if ([[request URL] isEqual:[[self.imageRequestOperation request] URL]]) {
|
||||||
self.image = image;
|
self.image = image;
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -114,6 +118,7 @@ static NSString * const kUIImageViewImageRequestObjectKey = @"imageRequestOperat
|
||||||
if (block) {
|
if (block) {
|
||||||
block(image);
|
block(image);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[[[self class] sharedImageRequestOperationQueue] addOperation:self.imageRequestOperation];
|
[[[self class] sharedImageRequestOperationQueue] addOperation:self.imageRequestOperation];
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue