打造功能丰富的 OS X 笔记应用:从文档操作到界面设计与附件支持
1. 文档数据的保存与加载
在处理文档时,首先会创建一个新的文件包装器,其中包含之前准备好的文本 RTF 数据,然后将其添加到文档的 documentFileWrapper 中。由于 documentFileWrapper 定义了默认值,所以它始终存在且可随时使用。最后,将 documentFileWrapper 返回给系统,由 OS X 根据需要进行保存。
加载文件的过程则是 fileWrapperOfType 方法的逆操作。以下是实现从文件包装器加载文档的 readFromFileWrapper 方法:
override func readFromFileWrapper(fileWrapper: NSFileWrapper,
ofType typeName: String) throws {
// 确保文件包装器中有额外的文件包装器
guard let fileWrappers = fileWrapper.fileWrappers else {
throw err(.CannotLoadFileWrappers)
}
// 确保可以访问文档文本
guard let documentTextData =
fileWrappers[NoteDocumentFileNames.TextFile.rawValue]?
超级会员免费看
订阅专栏 解锁全文
12

被折叠的 条评论
为什么被折叠?



