Objective c 使用AFN在缓存前编辑图像
我正在使用加载一组图像,我想在AFNetworking缓存这些图像之前对它们进行缩放并应用圆角 我开始缩放并在每次加载图像时对其应用圆角,但从缓存加载图像时也会调用完成块,因此当用户滚动充满图像的集合视图时,这会占用太多资源Objective c 使用AFN在缓存前编辑图像,objective-c,ios,afnetworking,Objective C,Ios,Afnetworking,我正在使用加载一组图像,我想在AFNetworking缓存这些图像之前对它们进行缩放并应用圆角 我开始缩放并在每次加载图像时对其应用圆角,但从缓存加载图像时也会调用完成块,因此当用户滚动充满图像的集合视图时,这会占用太多资源 [self.imageView setImageWithURLRequest:[NSURLRequest requestWithURL:url cachePoli
[self.imageView setImageWithURLRequest:[NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestReturnCacheDataElseLoad
timeoutInterval:10.0f]
placeholderImage:kVideoCollectionViewCellVideoImagePlaceholder
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
/**
* The image is edited here and this block is called
* when the image is loaded from web and from the cache.
*/
[self.imageView setImage:image];
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
DDLogError(@"%@", error);
}];
AFNetworking似乎为我的使用提供了一个很好的缓存,特别是当我启用磁盘缓存时,因此我想使用它,但我不知道是否有办法在缓存图像之前对其进行编辑
有人知道这是否可能,如果可能,如何做到吗?在发布了这个问题后,我突然想到,我可能也在使用UIImageView+AFNetworking类别的另一个方向上寻找。使用AFImageRequest操作直接解决了问题
__weak NZVideoCollectionViewCell *weakSelf = self;
NSURLRequest *request = [NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestReturnCacheDataElseLoad
timeoutInterval:10.0f];
AFImageRequestOperation *operation = [AFImageRequestOperation imageRequestOperationWithRequest:request imageProcessingBlock:^UIImage*(UIImage *image) {
/**
* Edit image.
*/
return editedImage;
}
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
[weakSelf.imageView setImage:image];
}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
DDLogError(@"%@", error);
}];
[operation start];