当您创建新项目时,我似乎记得您能够使用self.window
方法中的AppDelegate
访问它在故事板中创建的基本空白窗口。
我似乎无法通过故事板为AppDelegate.h
文件设置参考出口。我只是产生幻觉,或者无法从AppDelegate
访问窗口/控制器?
我混淆了iOS和OSX的做法吗?
答案 0 :(得分:5)
使用故事板,似乎无法将WindowController连接到AppDelegate。我使用以下内容来获取对主窗口的引用:
AppDelegate.h
@property (weak) NSWindow* window;
AppDelegate.m
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
_window = [[[NSApplication sharedApplication] windows] firstObject];
}
有关快速解决方案,请参阅this question。希望这会有所帮助:)
答案 1 :(得分:-1)
它为我工作。
我在我的AppDelegate.h中添加了一个IBOutlet
@property (nonatomic) IBOutlet NSWindow *window;
然后在Interface Builder(MainMenu.xib)中选择App Delegate:
您的IBOutlet应位于右侧Connection inspector
:
你的.xib和你的AppDelegate之间的联系可能会丢失吗?