Quicklook嵌入式预览

时间:2010-12-17 21:10:47

标签: objective-c ios cocoa nsview

来自quicklook的文档:

  

“快速查看”的消费者部分   有三个组成部分:一份文件   阅读器(包含自定义视图   和面板),显示捆绑   读卡器和SPI启用   与客户沟通。每个   这些组件具有特定的作用   为了支持消费者而发挥作用:

     

文档阅读器 - 快速查看实现   视图(NSView)和面板(NSPanel)   为显示文件而定制   预览。随着预览   内容,视图可能包括(at   客户的选项)控制   操纵预览,例如   页面转发,页面转发,开始   播放,快退和文本搜索。 :一种   客户端应用程序可以嵌入此视图   在用户界面中选择。   “快速查看”面板包含“快速”   查看视图和各种控件   让用户采取一些行动   预览,这样制作预览图像   全屏或开始播放幻灯片。“

我一直在研究quicklook的所有文档和示例,我也看不到:

  1. 任何类型的“文档阅读器”组件的定义或访问它的方式。
  2. 任何类型的SPI都将显示如何消费者快速浏览
  3. 可以直接访问quicklook用于显示预览的NSView。
  4. 我想按照文档说的那样做:在我自己的层次结构中嵌入quicklook的视图,而不是在Panel中。该小组当然有丰富的文件。有没有人以这种方式成功使用过Quicklook?

1 个答案:

答案 0 :(得分:7)

您要找的班级是QLPreviewView,是Quartz.framework的一部分。这是一个公共课(我相信在Lion中引入)。 不幸的是,文档团队显然尚未发布其文档,这可能是您无法找到它的原因。 official docs现已可用。

短而短的版本是您按照其他任何视图的方式创建它,并将其previewItem设置为您提供的id <QLPreviewItem><QLPreviewItem>协议is documented。 E.g。

QLPreviewView *pv = [[QLPreviewView alloc] initWithFrame:frame
                                                   style:QLPreviewViewStyleNormal];
[pv setPreviewItem:item];
[myView addSubview:pv];
[pv release];

这是基本概念,YMMV。

2011 WWDC会议“Mac OS X和iOS上的系统级预览”(或其他相关内容)全面介绍了其操作。如果您是Mac OS X或iOS开发人员计划的付费会员,您应该能够获得该视频。