【发布时间】:2014-10-19 12:53:47
【问题描述】:
Xcode 6.1 为使用 Core Data 的基于文档的应用程序提供了全新的模板。现在不需要继承 NSWindowController 子类,因为在 10.10 中,NSViewController 具有更多的功能,并且作为默认视图管理器包含在模板中。默认情况下甚至还有 AppDelegate,这很棒。
但我陷入了非常愚蠢的境地。我正在使用核心数据。而且我在应用加载时无法获取 currentDocument!我是认真的!在应用程序完成启动之前调用所有 MVC 堆栈。我有一些需要基于具有 NSPersinstentDocument 实例的核心数据项绘制的对象。但是当 ViewController 的 viewDidLoad 被调用时,没有办法得到那个实例。无法获取当前创建/打开的文档。
- NSDocumentController.sharedDocumentController().currentDocument 为零。
- self.view.window.windowsController.currentDocument 为零。
- NSApplication.sharedApplication().windows[0].windowsController.currentDocument 为零。
我该怎么办?这是一个错误,或者我真的必须跳过 viewDidLoad 中的代码并创建一些类似 loadUIStuffNow 的方法并从我的 App Delegate 的 applicationDidFinishLaunching 调用它?
【问题讨论】:
标签: cocoa core-data swift xcode6 osx-yosemite