2009-08-20 97 views
4

我遇到问题了解如何获得自定义nsview来通知某事发生在我的主控制器类。接口生成器自定义nsview发送操作父母

控制器类有这样MapView类的一个实例:

IBOutlet MapView *mapView; 

它是通过界面生成器实例化,并在我的MapView类,我得到这样的鼠标点击:

- (void)mouseDown:(NSEvent *)theEvent { //whatever... 

但是当这种情况发生时,需要在控制器类中更改一个或两个变量 - 我该怎么做?

回答

6

定义一个协议自定义视图类,并实现协议控制器,在您的视图类你会在你的观点,即实现了协议代码的委托财产......这个属性看起来像

@property(assign) id <MyProtocol> myProtocolDelegate; 

那么控制器可以将自己设置为视图的委托,并且如果它正确地实现协议,则应该在视图调用时获取消息。 此处信息http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProtocols.html