我正在开发一个iOS应用程序,视图创建了对其数据的请求,现在,如果用户取消了视图,它就会被释放,当FBConnect调用时:
if ([_delegate respondsToSelector:
@selector(request:didReceiveResponse:)]) {
[_delegate request:self didReceiveResponse:httpResponse];
}
应用程序崩溃。。。
这个案子有什么解决办法吗?
谢谢!
尝试使用更高级别的控制器作为委托,例如主视图控制器或应用程序委托本身。这样,您将始终确保在应用程序运行时不会释放该组件。
要么保留_delegate。或者从_delegate的dealloc方法中释放调用者(发出请求的调用者)。
或者,如果以上两种解决方案都不合适,那么将协议实现放到其他地方。如果你发布更多的细节,那么人们将能够提供具体的答案。