【问题标题】:Quicklook embedded previewQuicklook 嵌入式预览
【发布时间】:2010-12-17 21:10:46
【问题描述】:

来自 quicklook 的文档:

“Quick Look 的消费者部分 包含三个组件:一个文档 阅读器(由自定义视图组成 和面板),为此显示捆绑包 阅读器,和一个SPI启用 与客户的沟通。每一个 这些组件具有特定的作用 支持消费者:

文档阅读器——Quick Look 实现 视图(NSView)和面板(NSPanel) 为显示文档而定制 预览。连同预览 内容,视图可能包括(在 客户的选择)控制 操作预览,例如 向前翻页,向后翻页,开始 播放、倒带和文本搜索。 一个 客户端应用程序可以嵌入此视图 如果需要,在其用户界面中显示。 快速查看面板包含一个快速 外观视图和各种控件 让用户对 预览,比如制作预览图 全屏或开始幻灯片放映。”

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

  1. 任何类型的“文档阅读器”组件的定义或访问它的方式。
  2. 任何类型的 SPI 都可以展示如何快速查看消费者
  3. 对 quicklook 用于显示预览的 NSView 的任何直接访问。

正如文档所说,我想做的就是:将 quicklook 的视图嵌入到我自己的层次结构中,而不是在面板中。面板当然有丰富的文档。以前有人以这种方式成功使用过 Quicklook 吗?

【问题讨论】:

  • QLPreviewView 对您有用吗?
  • 您采用的解决方案是什么,我在使用 QLPreviewView 时遇到错误。我正在尝试预览本地文件。

标签: objective-c ios cocoa nsview


【解决方案1】:

您要查找的课程是QLPreviewView,是Quartz.framework 的一部分。这是一个公共课程(我相信是在 Lion 中引入的)。 不幸的是,文档团队显然还没有发布它的文档,这可能就是你找不到它的原因。official docs 现已可用。

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

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 开发者计划的付费会员,您应该能够获得该视频。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多