Открыть URL в фреймворке QuickLook

Я пытаюсь открыть файл с помощью фреймворка QuickLook. Все ресурсы, которые я нахожу в Интернете, показывают, как открыть файл, хранящийся локально, с помощью quicklook, однако возможно ли открыть файл с помощью URL-ссылки (которая не хранится локально)?

В своих попытках я потерпел неудачу. Вот что я сделал:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    let file = fetchedResultsController.object(at: indexPath)

    var fileToPreviewURL = "https://s3-us-west-1.amazonaws.com/powr/defaults/image-slider1.jpg"

    let urlToCheck = NSURL(string: fileToPreviewURL)

    if QLPreviewController.canPreview(urlToCheck) {
        print("Can preview!")
        quickLookController.currentPreviewItemIndex = 0
        navigationController?.pushViewController(quickLookController, animated: true)
    }else{
        print("Cannot preview") //printing out this in console when run app
    }

}

И мои методы делегата:

extension TaskViewVC:  QLPreviewControllerDataSource {

    func numberOfPreviewItems(in controller: QLPreviewController) -> Int {
        return 1
    }

    func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> QLPreviewItem {

        let url = NSURL(string: "https://s3-us-west-1.amazonaws.com/powr/defaults/image-slider1.jpg")

        return url!
    }
}

Я не уверен, почему QLPreviewController не может просмотреть urlToCheck, который является полностью допустимым URL-адресом с изображением.


person Josh O'Connor    schedule 30.01.2017    source источник


Ответы (1)


Насколько я знаю, предварительный просмотр с URL-адреса не поддерживается. Вероятно, вам следует сообщить об ошибке на bugreport.apple.com?

person Raffael    schedule 31.01.2017
comment
да нельзя. В документах говорится, что он должен быть локальным, поэтому его необходимо загрузить. В итоге мне пришлось использовать свой собственный предварительный просмотр. Так нелепо. - person Josh O'Connor; 01.02.2017