Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 什么时候我应该为OSX应用子类NSDocumentController?_Objective C_Macos_Cocoa_Nsdocument_Nsdocumentcontroller - Fatal编程技术网

Objective c 什么时候我应该为OSX应用子类NSDocumentController?

Objective c 什么时候我应该为OSX应用子类NSDocumentController?,objective-c,macos,cocoa,nsdocument,nsdocumentcontroller,Objective C,Macos,Cocoa,Nsdocument,Nsdocumentcontroller,我正在构建一个具有核心数据支持的基于文档的应用程序(因此我的文档是NSPersistentDocument),我想知道是否需要对NSDocumentController以及NSWindowController进行子类化(因为我有多个窗口) 我查阅了苹果的文档,但没有找到关于NSDocumentController的好解释,只是它说“不太可能需要对它进行子类化” 有人能给我一些关于这一切是如何运作的提示和场景吗 非常感谢您的任何帮助 可以在中找到子类化NSDocumentController(尽管

我正在构建一个具有核心数据支持的
基于文档的
应用程序(因此我的文档是
NSPersistentDocument
),我想知道是否需要对
NSDocumentController
以及
NSWindowController
进行子类化(因为我有多个窗口)

我查阅了苹果的文档,但没有找到关于
NSDocumentController
的好解释,只是它说“不太可能需要对它进行子类化”

有人能给我一些关于这一切是如何运作的提示和场景吗


非常感谢您的任何帮助

可以在中找到子类化
NSDocumentController
(尽管它不使用CoreData)的极好示例。查看他们的
DocumentController
类。具体来说,它们是
NSDocumentController
的子类,以支持临时无标题文档。新打开的文档将取代未经编辑的空无标题文档

另一个使用示例是更改应用程序中打开的文档映射到
NSDocument
子类的方式。默认情况下,它是一对一的,但是假设您正在以与Xcode相同的方式开发IDE。您可能有一个项目文档子类和一个文件文档子类。如果用户打开的文件已存在于打开的项目中,则可以强制在项目及其相关窗口中打开该文档,而不是为其创建新的文件文档和窗口


希望有帮助

我做了第二个例子。不幸的是,我没有将CoreData用于文档管理,所以我不确定这将如何改变情况(如果有的话)。