Objective c 使用RestKit从NSURL异步加载图像

Objective c 使用RestKit从NSURL异步加载图像,objective-c,ios,asynchronous,uiimageview,restkit,Objective C,Ios,Asynchronous,Uiimageview,Restkit,RestKit中是否有包装器或某种内置功能可用于使用回调或块从NSURL异步加载UIImage?我在RestKit文档中找不到这样的方法。如果没有,那么使用RestKit尽可能多地从NSURL实现延迟加载异步映像的好策略是什么?不确定是否有RestKit解决方案,但有一个库可以通过向UIImageView添加一个类别来轻松异步加载映像,因此您只需编写这个(例如): 使用RestKit,您可以使用RKRequest以如下方式加载图像的数据: RKRequest* request = [RKRequ

RestKit
中是否有包装器或某种内置功能可用于使用回调或块从
NSURL
异步加载
UIImage
?我在
RestKit
文档中找不到这样的方法。如果没有,那么使用
RestKit
尽可能多地从
NSURL
实现延迟加载异步映像的好策略是什么?

不确定是否有RestKit解决方案,但有一个库可以通过向UIImageView添加一个类别来轻松异步加载映像,因此您只需编写这个(例如):


使用RestKit,您可以使用
RKRequest
以如下方式加载图像的数据:

RKRequest* request = [RKRequest requestWithURL: url];

request.onDidLoadResponse = ^(RKResponse* response) {
    UIImage* image = [UIImage imageWithData: response.body];
    // do something interesting with the image
};

request.onDidFailLoadWithError = ^(NSError* error) {
    // handle failure to load image
}

[imageLoadingQueue addRequest: request];
请注意,即使在
onDidLoadResponse
情况下,您也可能需要检查
response
,以确保数据类型符合预期。上面使用的映像加载队列可以这样创建:

imageLoadingQueue = [RKRequestQueue requestQueueWithName: @"imageLoadingQueue"];
[imageLoadingQueue start];

那真是太棒了。。。我在不到5分钟的时间里,毫不犹豫地把它安装好并运行起来。我会坚持接受,直到我看到是否有任何基于RestKit的解决方案。SDWebImage也做图像缓存。好吧,RestKit没有。我认为这应该被标记为正确答案,没有看到任何RK实现接近SDWebImage功能。太棒了!它也可以作为Cocopod使用,这使得我使用restkik加载图像更加容易,为此我使用base64。。。我找到的唯一方法。当我使用#import时,编译器找不到RKRequest的定义,RKRequest在RestKit中仍然可用吗?
imageLoadingQueue = [RKRequestQueue requestQueueWithName: @"imageLoadingQueue"];
[imageLoadingQueue start];