如何使用QLPreviewPanel
?我知道它之前不是公共API,但它在10.6。如何使用它在标准QuickLook面板中显示文件预览?
答案 0 :(得分:9)
查看QuickLookDownloader代码。它将指导您完成将QLPreviewPanel
合并到代码中所需执行的一些操作。其中一些包括:
QLPreviewItem
协议 - 这告诉Quick Look在哪里可以找到您要预览的文件(并且您正在预览文件 - 您无法传递自定义数据)。QLPreviewPanel
定义数据源和委托(如果您之前使用过NSTableView
,这应该非常熟悉)。QLPreviewPanelController
协议(分配数据源和代理人)配置预览面板。项目1-3在示例代码的MyDocument
类中处理。切换显示主要在AppDelegate
类中处理。 DownloadsTableView
类中还支持通过空格键切换QLPreviewPanel
,而不是Finder。
答案 1 :(得分:0)
我自己只是看着这个。并且发现Apple在Docs中提供了一个很好的指导示例,此处还有一个很好的示例代码和文件 - > animgifqlgen
我正在使用Enriched HTML方法,这似乎适用于我需要的方法。
我们的想法是使用您通常用来解析文件信息的代码。并使用html进行布局并嵌入已解析的信息,然后在QL面板中显示html。很多普通的html代码都像大小宽度长度,bgcolor,src ......
该示例将展示如何编写包含html部分的代码。它使用NSMutableString及其appendString和appendFormat:来构建html。
我还没有尝试过其他方法。
为了测试我只是在plist中配置了文档内容类型UTI,并在我的/ Users / username / Library / QuickLook /文件夹中放置了内置产品(插件)的副本。
您可能需要创建文件夹。
请注意,当您想通过在文件夹中拖放新副本来替换QuickLook文件夹中的插件时,它可能正在使用中。 把旧的放在垃圾桶里。我还发现它有助于使用Activity Monitor应用程序退出Quick Look Helper流程。这样做确保我看到了新版本插件的结果,而不是仍在内存中的旧版本。 (我确定有人会告诉我,我做得不好;-))