如何在笔尖中建立与自定义属性的连接?

时间:2012-10-21 03:22:08

标签: objective-c nib xcode4.5

我创建了一个自定义视图。它有一个委托,它会在按下某些按钮时通知它。

我将此添加到视图控制器的viewDidLoad

self.myCustomView.delegate=self;

到目前为止一切正常。

但那还不够酷。我想做表格视图样式,我可以直接从视图拖动到文件所有者和(ta-da!)它自动设置。

1 个答案:

答案 0 :(得分:2)

IBOutlet关键字添加到班级的delegate媒体资源中:

@property (nonatomic, assign) IBOutlet id<MyViewDelegate> delegate;

IBOutlet关键字告诉nib编辑器允许您建立与该属性的连接。

您也可以这样说:

@property (nonatomic, assign) IBOutlet MyView *delegate;

然后IB只允许您将其连接到MyView。但协议或id更灵活。

编辑:因关注IB而失去一分

你说:

  

我创建了一个自定义视图。它有一个委托,它会在按下某些按钮时通知它。

接收按钮事件是视图控制器的角色,但有时委托将用于对某些事件进行更细粒度的控制。

一般情况下,不要在作为主窗口的视图上创建按钮按下的委托,在这种情况下,您应该在ViewController中处理按钮事件。按钮位于父视图上,该视图将事件转发到响应者链(您仍需要将它们连接到目标)。我并不是说您不应该使用委托模式进行按钮按下,但是按钮有自己的连接,可以根据需要通过拖放查看IB中的控制器。但是像你这样的情况是完全有效的。