我正在使用QLPreviewController来快速查看PDF文件和图像。在控制器上传内容之前,会显示一个空白屏幕。我尝试添加活动指标。它开始动画但不显示。
答案 0 :(得分:0)
我遇到了同样的问题,所以我想我会分享一个可能的解决方案。
您的主线程可能被阻止,阻止加载QLPreviewController。你可以考虑在另一个线程中加载你的数据:
dispatch_queue_t getData = dispatch_queue_create("com.myDomain.appName", NULL);
dispatch_async(getData, ^{
//get some data
});
你的主线程现在应该立即推送QLPreviewController,当它重试在_previewItemUrl上获取数据时,它将显示自己的Activity Indicator。 对于长时间运行的任务,此操作可能会超时:
等待来自com.apple.quicklook.quicklookd
的围栏障碍
在这种情况下,使用performSelectorInBackground:withObject:,并在方法结束时发布通知。注册您的课程以接收通知,并通过@selector推送previewController。