我不能在我的NSApplication子类中覆盖-sendEvent:

时间:2011-12-13 17:09:31

标签: objective-c macos cocoa nsapplication

在我的mac os x app中,我将NSApplication子类化并覆盖它的-sendEvent:方法。 Apple抱怨道:

  

该应用程序包含框架'/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit'中的'OBJC_IVAR _ $ _ NSApplication._delegate'。

我该怎么办?我做错了什么?

1 个答案:

答案 0 :(得分:7)

您正在通过直接引用_delegate ivar来访问应用程序代理,如下所示:

NSLog(@"my delegate = %p", _delegate);

您需要使用delegate访问器方法,如下所示:

NSLog(@"my delegate = %p", self.delegate);