, sen QLPreviewItem alt sınıfı ve opsiyonel özellik uygulayan kendi başlığı sağlayabilir:
Örnek Mülkiyet Bildirisi:
var previewItemTitle: String? { get }
Önizleme öğesi için görüntülenecek başlık. Bu özellik için bir alıcı yöntemini uygulamak yoksa
, sizin metot bize nil veya eğer QuickLook'u kullanıcıya göstermek için uygun bir başlık belirlemek için önizlemesi öğenin URL'sini veya içeriğini inceler. Özel bir başlığı sağlamak için bu özellik için sıfır olmayan bir değer döndürün.
protocol QLPreviewItem : NSObjectProtocol
Açıklama
QLPreviewItem protokolü (MacOS iOS veya QLPreviewPanel içinde QLPreviewController) Bir QuickLook'u önizleme içinde uygulamanın içeriği görünür kılmak için uygulamaya özellikleri tanımlar. Bu protokolde yöntemleri de NSURL sınıfında bir kategori olarak bildirilmiştir. Sonuç olarak, bu öğelerin varsayılan başlıklarını kullanmak istediğinizde, NSURL nesnelerini doğrudan önizleme olarak öğeler olarak kullanabilirsiniz. Varsayılan başlık, bir öğenin URL'sinin son yol bileşenidir. kendi önizleme öğesi başlıklarınızı sağlamak istiyorsanız, bu protokolü benimseyen kendi önizlemeni öğe nesnelerini oluşturun.
İlk Alt sınıf QLPreviewItem:
import UIKit
import QuickLook
class PreviewItem: NSObject, QLPreviewItem {
var previewItemURL: URL?
var previewItemTitle: String?
}
Sonra denetleyicisi size URL yerine QLPreviewItem dönmek:
import UIKit
import QuickLook
class ViewController: UIViewController, QLPreviewControllerDelegate, QLPreviewControllerDataSource {
let item = PreviewItem()
override func viewDidLoad() {
super.viewDidLoad()
item.previewItemTitle = "Custom Title"
item.previewItemURL = Bundle.main.url(forResource: "your file", withExtension: "ext")
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
quickLook()
}
func numberOfPreviewItems(in controller: QLPreviewController) -> Int {
return 1
}
func quickLook() {
let preview = QLPreviewController()
preview.delegate = self
preview.dataSource = self
preview.currentPreviewItemIndex = 0
present(preview, animated: true)
}
func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {
return item
}
}
Nasıl dosyayı yeniden adlandırma olmadan url adlandırabilirsiniz? – derdida