Como faço para retornar uma variável de um bloco dentro de um método?
Digamos que eu tenha esse método que, dado um URL, retorna um UIImage:
- (void)getUIImageFromURL:(NSURL *)URL {
NSURLRequest *request = [NSURLRequest requestWithURL:URL];
AFHTTPRequestOperation *imageOperation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
imageOperation.responseSerializer = [AFImageResponseSerializer serializer];
[imageOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
return (UIImage *)responseObject;
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}];
[imageOperation start];
}
Mas continua me dando esse erro:
Tipos de ponteiro de bloco incompatíveis que enviam 'UIImage * (^) (AFHTTPRequestOperation * __ strong, _id forte) 'para parâmetro do tipo' void (^) (AFHTTPRequestOperation *_strong, __strong id) '
Eu sou um pouco novo em blocos, então talvez eu esteja me aproximando disso completamente para trás. Qual a melhor forma de implementar um método como este?