【问题标题】:Storyboard doesn't contain a controller with identifier 'MainWindow'故事板不包含标识符为“MainWindow”的控制器
【发布时间】:2020-02-11 02:03:21
【问题描述】:

我正在尝试从我的 OS X 应用程序的情节提要中实例化 NSWindowController

NSWindowController *mainWindowController = [[NSStoryboard storyboardWithName:@"Main" bundle:nil] instantiateControllerWithIdentifier:@"MainWindow"];

但这就是我得到的:

Storyboard (<NSStoryboard: 0x618000008500>) doesn't contain a controller with identifier 'MainWindow'.

但在故事板中:

设置好了。不,没有其他故事板。是的,我已经尝试清理项目和构建文件夹,但没有任何变化。

为什么会出现这个错误?

更新:我正在构建我的应用程序,回到情节提要,我看到情节提要 ID 未设置:

Storyboard ID 如何自行取消设置?

【问题讨论】:

    标签: objective-c macos storyboard nsstoryboard


    【解决方案1】:

    这绝对是 Xcode 的一个错误。重启 Xcode 解决了这个问题。

    【讨论】:

    • 发生在我身上时,我注意到每次关闭项目并再次打开它时窗口控制器的情节提要ID都消失了。这一定是与自动保存功能相关的错误。我手动保存了故事板文件并清理 - 构建 - 运行。它奏效了。先生,您自己的回答对我有帮助。
    • 更重要的是,这个错误仍然存​​在于 XCode 9.3 beta 4 中,干得好苹果男孩!
    • 在 10.1 (10B61) 版本中仍然存在问题
    • 它重置 id 以清空每次重新启动。 10.2版
    • @KenZira 我也遇到了同样的问题。您是否尝试过上面列出的步骤?
    【解决方案2】:

    在 11.3 中确认。这太浪费时间了,还有这个:

    How do I open another window in macOS in Swift with Cocoa

    【讨论】:

    • 请在此处复制答案,而不是链接。
    猜你喜欢
    • 2017-12-05
    • 1970-01-01
    • 1970-01-01
    • 2015-02-21
    • 2020-06-28
    • 2023-03-09
    • 2015-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多