【发布时间】:2013-06-22 23:10:55
【问题描述】:
长期以来,我一直在与代表作斗争。出于某种原因,这对我来说是一个非常困难的概念。我觉得现在我有了更多的知识,但我还远没有自信。
请告诉我这些是否不正确/不完整以及原因。谢谢。
委托实现协议(未实现的方法头)
-
对象(委托者)可以注册委托(实现协议)。这可以通过声明一个实现协议的 id 类型的属性来完成:
@property (weak, nonatomic) id <MyProtocol> myDelegate; 委托人可以在委托上调用某些方法(在 MyProtocol 协议中指定)
-
任何实现协议并且必须是 Delegator 的委托的类都可以这样声明自己:
MyDelegator* myDelegator = segue.destinationViewController; myDelegator .delegate = self; -
使用委托的优点:
一个。减少耦合(Delegate 和 Delegator 不再相互依赖),这是一个重要的 OO 设计原则
b.使 Delegator 更通用;它现在可以与其他对象一起使用,而不仅仅是这个 Delegate
【问题讨论】:
标签: ios objective-c delegates protocols