我正在开发一款全新的OS X应用程序,并且我采用了一些我以前没有用过的技术来开发大胆的工作路线。 (我是一名iOS开发人员。)OS X如何加载基于故事板的应用程序,它如何进行窗口管理?
我在我的应用程序中使用Storyboard,Swift和Core Data,全部来自Xcode模板。当我的应用程序启动时,它会从Storyboard创建一个NSWindowController。
在另一个我在Objective-C中制作的OS X应用程序中,我使用代理方法applicationShouldHandleReopen:hasVisibleWindows:
来告诉窗口控制器调出窗口控制器的窗口。
我知道语言语义在Swift中保持不变,但核心数据和故事板让我有两个问题。
我的项目是否使用Core Data将其更改为“基于文档的应用程序”,从而改变了Windows的管理方式?
在我的旧项目中,我使用笔尖而不是故事板。看来我手动实例化
NSWindowController
,并用它来管理重新打开。如果有一种方法可以让我的Storyboard毫无疑问地为我所用,那将是最佳的,对吗?只需在我的App Delegate上添加一个插件即可。还有另一个约定吗?
相关: http://stackoverflow.com/questions/3683349/nswindowcontroller-clarification-of-understanding – Moshe 2014-12-03 03:52:23
你一次性咬掉太多。 – uchuugaka 2014-12-03 03:53:24
文档体系结构完全不同,并且增加了层次结构。每个NSDocument实例可以有多个窗口控制器。我建议先分别处理故事板,核心数据和文档拱门。 – uchuugaka 2014-12-03 03:55:43