2012-10-28 10 views
7

Sto sviluppando un'applicazione per Mac OS X in Xcode e sto cercando di implementare un pulsante che apre un'immagine in modalità Quicklook (come quando selezioni un'immagine in Finder e premi <spazio>).Immagini a scorrimento rapido programmabili in Mac OS X

Mi piacerebbe che funzioni come Skype per Mac quando si fa clic sull'icona "occhio" accanto a un file scaricato durante una chat.

Qualche consiglio su come ottenere questo risultato?

+0

google search mi ha portato alla guida Apple su come eseguire esattamente questo -https: //developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/Quicklook_Programming_Guide/Introduction/Introduction.html –

+1

Ciao Justin. Mi sono imbattuto in quel documento da solo, ma non sembra rispondere alla mia domanda. Sembra che l'intero documento riguardi l'implementazione dei generatori di Quick Look. Per tutti i tipi di immagine comuni ci sono già generatori. Quello che voglio fare non è implementare un generatore, ma invocare un generatore di Quick Look dall'interno della mia app, anziché tramite Finder. – bgh

+0

descrive come generare l'immagine di anteprima da un file di quanto lo si possa inserire nella propria vista. Destra? forse mi manca qualcosa –

risposta

24

Dopo aver rivisitato questa domanda, ho finalmente trovato una risorsa che mi ha portato nella giusta direzione per risolvere il problema.

Apple's Quick Look Programming Guide sembra essere molto concentrato sull'implementazione di generatori, che non era quello che mi interessava. Questo documento non sembra avere una sezione che spiega come visualizzare un'anteprima QuickLook dall'interno della vostra app. Tuttavia, mi sono imbattuto in un progetto di esempio (QuickLookDownloader) che illustra molto bene come è stato fatto.

In pratica si utilizza l'oggetto QLPreviewPanel condiviso dell'applicazione. Fai QLPreviewPanel la finestra chiave chiamando il metodo makeKeyAndOrderFront :. Quindi si accetta (e si rilascia) QLPreviewPanel tramite i metodi del protocollo QLPreviewPanelController. Questi metodi vengono richiamati sul primo oggetto della catena di risposta che risponde ad esso quando QLPreviewPanel diventa la chiave. È inoltre necessario implementare i protocolli QLPreviewPanelDataSource e QLPreviewPanelDelegate e assegnare i delegati a QLPreviewPanel.

Ci sono alcuni passaggi che è necessario eseguire, ma il progetto QuickLookDownloader di esempio lo illustra bene.