我想将RKObjectManager的委托设置为nil。但我找不到委托财产。
我的要求是:
[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"getData"
objectMapping:[[RKObjectManager sharedManager].mappingProvider
objectMappingForKeyPath:@"clips"] delegate:self];
更新:我的应用程序崩溃了。我转到“剪辑”并在viewDidLoad中发送loadObjectsAtResourcePath。如果我快速离开这个屏幕,我会在[RKResponse connection:didReceiveData:]崩溃。
答案 0 :(得分:7)
崩溃是由你的'委托'对象被解除所造成的。您的问题有一个简单的解决方案 - 只需取消所有待处理的请求,例如。在您的viewDidUnload(或dealloc,它取决于您的实现)方法。
- (void)viewDidUnload
{
...
[[[[RKObjectManager sharedManager] client] requestQueue] cancelRequestsWithDelegate:self];
...
}