我们在哪里可以为MainMenu.xib编写windowDidBecomeKey方法

时间:2015-11-30 08:54:45

标签: objective-c macos cocoa

我认为这是一个简单的问题,但我是Cocoa的新手。我们在哪里可以为MainMenu.xib编写-windowDidBecomeKey方法,这样当主窗口成为键时,应该调用该方法。谢谢。

1 个答案:

答案 0 :(得分:0)

首先,转到您的app delegate头文件,然后更改如下所示的内容:

@interface AppDelegate : NSObject <NSApplicationDelegate>

到此:

@interface AppDelegate : NSObject <NSApplicationDelegate, NSWindowDelegate>

然后转到实现文件,并实现方法:

- (void)windowDidBecomeKey:(NSNotification *)notification {
    // do something
}

然后右键单击界面构建器中窗口的标题栏,将Delegate旁边的点拖到您的app delegate上。

或者,您可以收听通知。将其添加到applicationDidFinishLaunching方法:

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(windowDidBecomeKey:)
                                             name:NSWindowDidBecomeKeyNotification
                                           object:_window];

这种方法的优点是您可以根据需要命名侦听器方法。