2012-10-28 60 views
7

我正在爲Xcode中的Mac OS X開發一個應用程序,並試圖實現在Quicklook模式下打開圖像的按鈕(例如,當您在Finder中選擇圖像並按<space>)。以編程方式在Mac OS X中快速查看圖像

當您點擊聊天過程中下載的文件旁邊的小圓形「眼睛」圖標時,我希望它像Skype for Mac一樣工作。

有關如何實現此目的的任何建議?

+0

谷歌搜索引導我如何做到這一點蘋果指南--https://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/Quicklook_Programming_Guide/Introduction/Introduction.html –

+1

嗨賈斯汀。我親自看過那個文件,但似乎沒有回答我的問題。看起來好像整個文檔都是關於實現Quick Look生成器的。 對於所有常見的圖像類型,都有發生器。我想要做的不是實現一個生成器,而是從我的應用程序中調用一個Quick Look生成器,而不是通過Finder。 – bgh

+0

它描述瞭如何從文件生成預覽圖像,而不是將它放在您自己的視圖中。對?也許我錯過了一些東西 –

回答

24

重溫這個問題後,我終於遇到了一個資源,導致我正確地解決問題。

Apple's Quick Look Programming Guide似乎非常關注生成器的實現,這不是我所感興趣的。本文似乎沒有解釋如何從應用程序內部顯示QuickLook預覽的部分。但是,我遇到了一個示例項目(QuickLookDownloader),很好地說明了它是如何完成的。

你基本上使用應用程序的共享QLPreviewPanel對象。通過調用它的makeKeyAndOrderFront:方法使QLPreviewPanel成爲關鍵窗口。然後通過QLPreviewPanelController協議的方法接受(並釋放)QLPreviewPanel。這些方法在響應者鏈上的第一個對象上調用,當QLPreviewPanel變爲關鍵時,響應者鏈上的第一個對象會響應它。您還必須實現QLPreviewPanelDataSource和QLPreviewPanelDelegate協議,並將這些委託分配給QLPreviewPanel。

需要採取幾個步驟,但示例QuickLookDownloader項目很好地說明了它。

相關問題