Xcode 11, Swift 5.1
Я получаю пару предупреждений каждый раз, когда открываю файл и просматриваю его с помощью QuickLook (QL). Кажется, он работает нормально, но мне интересно, смогу ли я избавиться от предупреждений.
В предупреждениях говорится:
- [QLPreviewPanel setDelegate:] вызывается во время панелине имеет контроллера - исправьте это, или это скоро повысится.
- [QLPreviewPanel setDataSource:] вызывается, когда на панели нет контроллера - исправьте это, или это скоро повысится.
Iустановить и использовать QL для NSTableCellView
, например:
import Quartz
class AttachmentCell: NSTableCellView, QLPreviewPanelDataSource, QLPreviewPanelDelegate{
var quickLookItem:URL!
@IBAction func clickPreview(_ sender: Any) {
guard let panel = QLPreviewPanel.shared() else{ return }
panel.delegate = self
panel.dataSource = self
panel.makeKeyAndOrderFront(self)
}
func numberOfPreviewItems(in panel: QLPreviewPanel!) -> Int {
return 1
}
func previewPanel(_ panel: QLPreviewPanel!, previewItemAt index: Int) -> QLPreviewItem! {
quickLookItem = URL(fileURLWithPath: "...").appendingPathExtension(...)
return quickLookItem as QLPreviewItem
}
}
Метод clickPreview
для NSButton
, который есть в ячейке моей таблицы. Самая близкая вещь, которую я мог найти, была это, но я не вижу, как цепочка респондента задействована: QLPreviewPanel в табличном представлении с проблемой: «нет контроллера»
Я также попытался настроитьмои методы делегата на моем NSViewController
вместо этого, но появляется то же самое предупреждение.
Есть идеи, как решить эту проблему? Или я могу спокойно проигнорировать это?