我们在哪里可以为 MainMenu.xib 编写 windowDidBecomeKey 方法
Posted
技术标签:
【中文标题】我们在哪里可以为 MainMenu.xib 编写 windowDidBecomeKey 方法【英文标题】:where can we write windowDidBecomeKey method for MainMenu.xib 【发布时间】:2015-11-30 08:54:45 【问题描述】:我认为这是一个简单的问题,但我是 Cocoa 的新手。我们在哪里可以为MainMenu.xib编写-windowDidBecomeKey方法,以便当主窗口成为键时应该调用该方法。谢谢。
【问题讨论】:
【参考方案1】:首先,转到您的应用委托头文件,然后更改如下所示的内容:
@interface AppDelegate : NSObject <NSApplicationDelegate>
到这里:
@interface AppDelegate : NSObject <NSApplicationDelegate, NSWindowDelegate>
然后进入实现文件,实现方法:
- (void)windowDidBecomeKey:(NSNotification *)notification
// do something
然后在界面生成器中右键单击窗口的标题栏,并将 Delegate 旁边的点拖到您的应用委托上。
或者,您可以收听通知。将此添加到 applicationDidFinishLaunching
方法中:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(windowDidBecomeKey:)
name:NSWindowDidBecomeKeyNotification
object:_window];
这种方法的优点是您可以随意命名监听器方法。
【讨论】:
以上是关于我们在哪里可以为 MainMenu.xib 编写 windowDidBecomeKey 方法的主要内容,如果未能解决你的问题,请参考以下文章
在 Xcode 5 中禁用基本本地化后找不到 MainMenu.xib
如何在 Cocoa 应用程序中手动创建和附加 MainMenu.xib?
UIApplicationDelegate 与 NSApplicationDelegate、MainMenu.xib