如何将QLPreviewPanel显示为可可中的popover?

时间:2014-05-30 16:34:31

标签: objective-c macos popover quicklook

enter image description here

我想制作一个可以像聚光灯搜索实现一样显示弹出窗口的Popover?我只能用传统的方式在中心显示一个Quicklook窗口,但我想做这样的事情:

我该怎么办?感谢。

1 个答案:

答案 0 :(得分:4)

这可以通过创建QLPreviewView中嵌入的NSPopover实例来实现。

然后,创建一个符合QLPreviewItem协议的NSObject子类,并在使用传统的QuickLook previewItem时设置QLPreviewView上的QLPreviewPanel属性。

QLPreviewView *view = [[QLPreviewView alloc] initWithFrame:NSMakeRect(0, 0, 800, 100) style:QLPreviewViewStyleNormal];

JPQuickLookItem *item = [[JPQuickLookItem alloc] init];
item.previewItemURL = [NSURL fileURLWithPath:@"/Users/josh/Desktop/Test.png"];
item.previewItemTitle = @"Test.png";
view.previewItem = item;

我创建了sample Swift implementation here