![](/img/trans.png)
[英]Implementation of NSURL/File QuickLook Preview & NSURL/File dragging
[英]NSURL subclass, with file URL, doesn't work in QuickLook, for non-ASCII filenames?
這有很多方面,但據我所知,它們都是重現問題的必要條件。
我做了一個瑣碎的NSURL子類,如下所示:
class URL2: NSURL { }
我用它制作了一個文件URL:
let f = URL2(fileURLWithPath: "/Users/me/Downloads/ついて.pdf")
然后,我嘗試從previewPanel(panel:previewItemAtIndex index:)
返回它。
結果:我在QLPreviewPanel中得到一個通用文件圖標(但是它具有正確的文件名)。
奇怪的是,如果我以不同的方式進行操作,那么它會起作用:
NSURL(fileURLWithPath: "/Users/me/Downloads/ついて.pdf")
,它將正確顯示文件內容。 在這種情況下,我會怎么做而導致QuickLook對我的NSURL子類不滿意?
子類化NSURL(或NSURLRequest)通常是瘋狂的途徑,這在很大程度上(我認為)要感謝OSX的各個部分中對NSXPC的大量使用。
我建議改為使用帶有關聯對象的類別。 這樣可以避免遇到極端情況,同時仍然允許您向NSURL對象添加自定義方法和屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.