我正在使用Xcode在Swift上构建一个新的基于文档的OS X应用程序。我想将默认的Document类命名为其他名称(在此情况下为Notebook),但它仍然会继承NSDocument(如果我使用Core Data,则为NSPersistentDocument)。我可以将文件从Document.swift重命名为Notebook.swift,但是一旦我将实际的类从Document重命名为Notebook,运行应用程序就会弹出错误警报“无法创建任何文档”。控制台告诉我“DocumentType类型没有映射到任何NSDocumentClass。” 显然,在我重命名后,我必须执行其他操作以使文档架构能够识别我的类。 但是怎么做呢?我在另一个网站上找到了一些说明,但它们是针对Objective-C和XIB编写的,而我正在使用Swift和storyboard;我需要做的可能会有很大不同。如何在Swift中使用storyboard为文档型应用程序重命名主要文档类?
它适用于顶部的版本,但不适用于底部的版本。
import Cocoa
class Document: NSDocument {
... [standard code for Document class goes here, edited out for brevity]
}
我把它改成了
import Cocoa
class Notebook: NSDocument {
[...]
}
它适用于顶部的版本,但不适用于底部的版本。