首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QuickLook无法加载某些文件

QuickLook无法加载某些文件
EN

Stack Overflow用户
提问于 2017-04-25 16:32:06
回答 1查看 484关注 0票数 0

背景

我正试图通过QuickLook打开一些文件。我有一个.docm和一个.pdf,我可以用它们来重现这个错误。起初,我认为这是由于启用宏的Microsoft文档造成的,但由于使用100+MB pdf时出现了错误,所以我想知道QuickLook是否有问题。

误差

[default] View service did terminate with error: Error Domain=_UIViewServiceInterfaceErrorDomain Code=3 "(null)" UserInfo={Message=Service Connection Interrupted} #Remote

这个错误会从QuickLook中反复抛出。据我所见,这个错误似乎只有在使用模拟器并试图发送电子邮件时才是常见的。我使用的是iPhone 7+,每次都可以复制。

我想知道我正在使用的文件是否与它们有问题。

测试

我尝试了以下文件,结果各不相同

  • 100 .pdf -成功
  • 100 .doc -成功
  • 17 .docm -故障
  • 85 .docx -成功
  • 100 to .pdf -失败(与第一个不同,这个文件加载文件,但反复刷新,直到它进入“错误”QuickLook屏幕)

问题

在QuickLook上是否有任何大小限制或超时可能导致这个奇怪的错误?

EN

回答 1

Stack Overflow用户

发布于 2018-12-04 11:52:36

万一在iOS12中发生了这种情况,在呈现像这样的快速外观控制器时尝试添加一个延迟-

目标-C

代码语言:javascript
复制
 QLPreviewController *previewController = [[QLPreviewController alloc]init];
 previewController.delegate = self;
 previewController.dataSource = self;
 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC)),  dispatch_get_main_queue(), ^{
     [self presentViewController:previewController animated:YES completion:nil];
 });                                                                      

Swift

代码语言:javascript
复制
let previewController = QLPreviewController()
        previewController.dataSource = self
        previewController.delegate = self
        let delay = DispatchTime.now() + 0.3
        DispatchQueue.main.asyncAfter(deadline: delay, execute: {
            self.present(previewController, animated: true)
        })

这是为我准备的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43616284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档