2009-08-20 30 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