我正在使用 NSDocument 创建一个 Mac 应用程序,它将自定义文档类存储到 iCloud。
只需对它进行代码签名、沙盒化和添加 iCloud 授权,我就可以很容易地让程序将文档存储到 iCloud;但是,我仍然遇到一个问题,当我触发 iCloud 冲突并且程序放下工作表允许用户解决冲突时,工作表中的行不显示文档的小图像(如 Preview 和 TextEdit )。
此外,当我单击图像应该所在的区域(它是空白的)时,它会打开一个快速查看窗口,该窗口仅显示文档图标的图像以及一些其他信息,而不是像预览这样的实际文件的快照和 TextEdit 做。
我在 Apple 的文档中没有找到任何信息来解释我需要做些什么来实现与 Preview 和 TextEdit 相同的行为。
到目前为止,我对能够轻松获得自动保存和版本浏览器的所有功能以及保存到云的所有功能感到惊讶。NSDocument 似乎为开发人员完成了所有这些工作(解决 iCloud 冲突等),正如 Apple 的文档所说的那样,但我再次没有遇到这种其他行为,我不想通过编写代码来重新发明轮子不需要。
我认为答案可能在于实现快速查看缩略图(用于工作表中表格中的小图像)和快速查看预览,以便在单击工作表中的文档时实现较大的文档预览,但是这似乎需要做很多工作,如果我开始“捕获”食物链上的 NSDocument 例程,我担心会丢失 NSDocument 的其他一些内置功能。
有没有其他人遇到过这个问题并找到了最简单的解决方案?
更新:2012 年 12 月 25 日
我终于发现问题是我需要一个 QuickLook 生成器来显示 QL 缩略图(显示在冲突表的表格中)和 QL 预览(当用户单击缩略图时显示)
我最终创建了 QL 生成器项目,然后创建了一个工作区,我将我的主项目和 QL 生成器项目添加到其中。之后,我在主项目中添加了一个复制文件构建阶段,以将 QL 生成器复制到主应用程序包中。