尝试从情节提要中自定义实例化窗口控制器时,我感觉像是个错误。我正在使用NSStoryboard.instantiateController(identifier:creator:),这是MacOS 10.15中的新功能。有问题的代码块是:
Let mainWindowController = storyboard.instantiateController(identifier: "Analysis Window Controller") { aDecoder in
MainWindowController(coder: aDecoder)
}
我已经成功地使用了这个确切的代码来自定义实例化主view控制器,并将该视图分配给一个新窗口和一个新窗口控制器。很好我还可以使用老式的方式实例化window控制器,而无需使用InstantiateController(identifier :)进行自定义初始化。但是,当我尝试上述代码用于window控制器的custom实例化时,我遇到以下错误:
-[NSClassSwapper _createControllerForCreator:coder:中的断言失败...自定义实例化的控制器必须调用-[super initWithCoder:]]
请注意,我的自定义视图控制器类(有效)和我的自定义窗口控制器类MainWindowController(均无效)都实现了简单的初始化方法:
required init?(coder: NSCoder) {
super.init(coder: coder)
}
[我知道此功能自OS 10.15起是新功能,但documentation表示此功能应适用于窗口控制器和视图控制器,并且错误消息对我没有任何意义。
如果您想继续讨论,我会以反馈#FB7626059的形式提交(我也遇到了这个问题。]