iOS打开附件功能

    附件功能主要包括可直接打开类型以及不支持直接打开的类型。直接打开可用的方式有web、QLPreviewController、UIDocumentInteractionController 。废话不多说了,直接上代码吧。

    新建一个文件工具类,只提供两个公共方法。

iOS打开附件功能_第1张图片

    第一步,我们需要判断后端给的附件url是否是我们支持的可直接打开类型。因为个人没有发现UIDocumentInteraction里提供此类方法,我就用正则去匹配,如果大家有更好的方法也可以一起交流一下。

iOS打开附件功能_第2张图片

    第二步,就可以根据是否可打开进入不同的操作。可直接打开则先去读取文件目录中是否有相同文件名的文件,有则直接用上述三种方法选择其一直接打开,这里的CHRemotePreviewViewController我是采用的QLPreviewController做的预览,我在CHRemotePreviewViewController也做了文件判断,和下面选择其他方式打开里重复了下载这一代码,本人比较懒没改过来,这里可以自己抽成一个方法。不可直接打开则调用UIDocumentInteractionController类弹出是否选择第三方的方式打开附件,当然你依旧需要判断是否文件存在本地了。

   

    

iOS打开附件功能_第3张图片


iOS打开附件功能_第4张图片


iOS打开附件功能_第5张图片

写完了,多多包涵。

你可能感兴趣的:(iOS打开附件功能)