Я пытаюсь открыть файл с помощью фреймворка 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-адресом с изображением.