使用QLPreviewController快速显示文档

从远程URL显示文件。

假设我们有一个必须在应用程序中显示的文档的远程URL。 在显示任何此类文档之前,我们必须将文件下载到app目录,然后才能显示该文件。

为什么不应该将远程URL作为QLPreviewItem传递?

您可能会认为QLPreviewItem是NSURL类型,我们可以执行类似的操作以直接显示文件。

QLPreviewItem = remoteURL 为! 网址

是!! 我们做得到。 该文档也可能会显示。 但这不是处理远程URL的正确方法。 如果我们不下载就显示大尺寸文档,则将看不到它们。 共享文档时可能会导致崩溃。

所以这就是我们要做的。 看图

我们将异步下载文件,下载后,文件应从临时 位置移至destinationURL 。 并且此destinationURL将用于在QLPreviewController中显示文件。 见图,我们在完成块中返回fileLocation

如果您不知道完成块。 看看链接。

同样,我们都已设置为显示来自远程URL的文件。 我们只需要按下按钮displayFileFromURL(_ sender:UIButton)。

您可以从我的Git存储库QuickLookDemo下载完成的演示项目。

摘要

伙计们,这一切都是关于我对Quick Look框架的经验。 我最近使用了此功能,因此想与大家分享。 尝试一下,让我知道我是否错过任何事情。

祝您好运,如果您喜欢或学到新东西,请推荐并分享。