我对指定代表的类有疑问。
有时委托对象需要实现协议,有时不需要。例如,如果你想显示一个UIAlertView
,你创建它并指定一个delegate
相似的自我。然后,调用 的类UIAlertView
必须实现UIAlertViewDelegate
协议。
NSUrlConnection
如果您创建与消息类似的其他类,则connectionWithRequest:delegate:
指定一个委托,它将NSUrlConnection
在连接进行时接收发送的委托消息,但指定为委托的对象不必实现协议。
我错过了什么吗?我如何理解何时应该实施协议?从 API 参考中是否总是清楚的UIAlertViewDelegate
?
我注意到UIAlertView
reference 仅提供实例方法并告诉您必须实现UIAlertViewDelegate
协议,而NSUrlConnection
没有谈论要实现的协议,但它有一个委托方法部分。
可以NSUrlConnection
像UIAlertView
类一样定义,没有委托方法但有一个NSUrlConnectionDelegate
协议。
还是我错过了重点?在我看来,出于相似目的有两种不同的方式,但也许我错了。我希望我已经很清楚了,我只是想完全理解这些东西背后的基本原理。