据我了解,委托类是始终从类继承的NSResponder
类,并且delegate
仅适用于从 NSResponder
. NSMenu
直接继承自NSObject
,那么为什么我会deletgate
在 中 看到outlets
?还是我误解了您在界面生成器中按住 ctrl 单击某个对象后看到的选项?我明白了Outlets
,,, 这些Referencing outlets
是Received Actions
什么意思呢?如果这很重要,我正在使用 Xcode 4 (10.7.3)。
问问题
249 次
1 回答
0
我不知道你在哪里看到的,但这是完全不正确的。委托只是一种模式,可以实现委托的对象类型没有限制。
事实上,我们鼓励您在自己的类中使用委托模式。
NSMenu
在标头中将其delegate
属性声明为插座,这就是您在 Interface Builder 中看到它的原因。您可以在自己的代码中执行相同的操作,如下所示:
@interface YourObject : NSObject {}
@property (weak) IBOutlet id delegate;
@end
在 Interface Builder 中,Outlets
指的是在您的类的标题中定义并且您可以连接到其他对象的插座。 Referencing Outlets
以及从其他对象到您的对象的Referencing Actions
连接。
于 2012-02-25T02:27:14.763 回答