代码之家  ›  专栏  ›  技术社区  ›  usrgnxc

接口生成器自定义nsview向父级发送操作

  •  4
  • usrgnxc  · 技术社区  · 17 年前

    我在解决如何让自定义nsview与我的主控制器类发生了问题时遇到了问题。

    Controller类具有这样的MapView实例:

    IBOutlet MapView *mapView;
    

    它是通过Interface Builder实例化的,在我的MapView类中,我得到如下鼠标单击:

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

    但当发生这种情况时,需要在控制器类中更改一两个变量-我如何才能这样做?

    1 回复  |  直到 17 年前
        1
  •  6
  •   Daniel    17 年前

    为自定义视图类定义一个协议并在控制器中实现该协议,在视图类中,视图中将有一个委托属性来实现协议代码…那房子看起来像

    @property(assign) id <MyProtocol> myProtocolDelegate;
    

    然后,控制器可以将自己设置为视图的委托,如果它正确地实现了协议,那么当视图调用该协议时,它应该得到消息。 此处显示信息 http://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProtocols.html