如何将 QLPreviewPanel 显示为可可中的弹出窗口?

DNB*_*ims 2 macos objective-c popover quicklook

在此输入图像描述

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

我怎样才能这样做呢?谢谢。

Jos*_*osh 5

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

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

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;
Run Code Online (Sandbox Code Playgroud)

在这里创建了一个示例 Swift 实现