我在尝试在 iPad 应用程序中预览大文件时遇到问题。在应用程序中,我们使用 UIDocumentInteractionController。当我们尝试打开大文件(> 100 MB)时,UIDocumentInteractionController 仅显示带有文件名称和大小的灰色屏幕。
为了缩小问题范围,我们做了一个简单的应用程序,仅尝试使用 QLPreviewController 预览文件,我们发现了同样的问题。
该问题似乎与内存使用有关。因为您可以预览的文件的最大大小会根据 iPad 型号和后台应用程序数量而变化。
尝试使用 UIWebView 预览文件更糟糕:应用程序崩溃(内存警告)。
如何使用 QLPreviewController 预览大文件?我应该做一些特别的事情吗?我应该使用其他组件吗?哪一个?
您可能无法执行您想要的操作 - 看来 UIDocumentInteractionController 只能接受 URL,而不能接受打开的文件。
一般来说,您使用的技巧是使用“映射”文件 - 这是一个不需要完全读入内存的文件,但使用虚拟内存根据需要拉入,然后释放未使用的块。
If you 看看这个答案你可以看到如何使用 NSData 对象来做到这一点。使用这样的对象,您可以初始化其他类型的数据对象 - 只是现在不确定如何处理 UIDocumentInteractionController。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)