我想在我的应用程序打开时启动调试日志窗口。以下是我计划执行此操作的方式:
-(void)applicationDidFinishLaunching:(NSNotification *)notification
{
LogWindowController *lwc = [[LogWindowController alloc] initWithWindowNibName:@"LogWindow"];
[lwc showWindow:self];
[[lwc logWindow] orderFront:self];
}
日志窗口已创建并运行,例如可在“窗口”菜单中使用。但它在任何地方都看不到。
如果我运行相同的代码来响应菜单项,日志窗口将按预期显示。
为什么会发生这种情况?如何打开应用程序启动时可见的日志窗口?
最佳答案
没有任何东西对该窗口 Controller 具有强引用。在此函数结束时,lwc
将被释放,这将立即关闭窗口(在绘图周期发生之前,因此您不会看到闪烁或任何东西)。
您需要将 lwc
存储在 strong
属性中,以便在您需要时才释放它。
关于objective-c - 如何在 applicationDidFinishLaunching 中启动第二个窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33240417/