【发布时间】:2009-09-11 03:02:37
【问题描述】:
我阅读了很多关于目标 c 代表的内容,但没有弄清楚。谁能解释一下 一个很好而准确的例子,以便我可以理解它。高级感谢您的回复。
【问题讨论】:
标签: objective-c cocoa
我阅读了很多关于目标 c 代表的内容,但没有弄清楚。谁能解释一下 一个很好而准确的例子,以便我可以理解它。高级感谢您的回复。
【问题讨论】:
标签: objective-c cocoa
Objective-C 中的委托本质上是指向另一个类用来通知它事件的对象的指针。
例如,A 班要求您指定一名代表。你告诉它 [this] 类 B 的实例就可以了。
[a setDelegate:b];
然后在 A 类的方法和动作中,它会像这样调用委托对象上的预定义方法:
-(void)actionFinished:(id)sender
{
[delegate a:self finishedWithResult:RESULT_OK];
}
所以你的委托对象应该被实现来响应那个消息:
-(void)a:(A *)a finishedWithResult:(int)result { /* respond */ }
【讨论】:
这是我给出的关于代表及其工作方式的答案:Parsing XML in Cocoa
它最常被称为“策略模式”,您可以在 Wikipedia 上阅读所有相关信息:http://en.wikipedia.org/wiki/Strategy_pattern
【讨论】: