如果我使用以下代码,则会显示错误“类型'HttpConnection'不符合协议'NSObjectProtocol'”
class HttpConnection : NSURLConnectionDataDelegate {
var urlConnection : NSURLConnection?
weak var delegate : HttpConnecting?
init(delegate:HttpConnecting){
self.delegate = delegate;
}
func startAsynRequestWithUrlString(url:NSString, withMethod:NSString){
}
}
如果我将HttpConnection子类化为NSObject,则可以正常工作。所以我的问题是,当我需要迅速采用NSURLConnectionDataDelegate协议时,为什么需要从NSObject继承该类?
NSURLConnectionDataDelegate
本身NSURLConnectionDelegate
继承自NSObjectProtocol
。
这意味着除了实现NSURLConnectionDataDelegate
,和中的所有方法外NSURLConnectionDelegate
,您还必须实现,和中的所有方法NSObjectProtocol
(例如,相等,哈希)。
您没有实现它们,这是您的错误。如果您从继承NSObject
,则所有这些NSObjectProtocol
方法都已经为您实现。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句