NSWindowController El Capitan 兼容吗?

NSWindowController El Capitan Compatible?

我正尝试在 El Capitan 上使用 xCode 7.0.1 构建我的项目。之前 NSWindowController 一直在显示我们的启动画面 windows,但是自从升级到 El Capitan 以测试我们的插件兼容性后,没有显示 Windows。

这是我用来显示初始屏幕的代码(在之前的 OS X 中运行良好):

pcim_splashcontroller * splash = [[pcim_splashcontroller alloc] initWithWindowNibName:@"pcim_splash"];
[[splash window] center];

// Slight time delay here...

[splash close];
[splash release];

pcim_splashcontroller 指定为:

@interface pcim_splashcontroller : NSWindowController
{
    IBOutlet NSTextField *ExpiresLabel;
    IBOutlet NSTextField *CopyrightLabel;
    NSUInteger DaysRemaining;
}

有没有其他人在 El Capitan 中成功使用 NSWindowController?最初该插件内置于 Yosemite,因此我尝试使用最新版本的 xCode 在 El Capitan 中重建,但没有成功,所以我想知道这是否与新的 OSX.

当我单步执行调试器时,没有出现任何错误,启动指针似乎分配正确。我也试过加入:

[splash showWindow:nil]

但这似乎也没有帮助。

非常感谢。

El Capitan 似乎对 NSWindow 有某种缓存,可能在主运行循环上进行管理。

试试这个:

[[splash window] center];

[[NSRunLoop currentRunLoop] runUntilDate: [NSDate dateWithTimeIntervalSinceNow: 1]];

[splash close];