我正在尝试使用 QLPreviewController 显示文件。QL 视图正确显示(被推送到我的导航控制器顶部),但内容为空白。但是,不会显示任何错误并且应用程序不会崩溃。检查文件是否存在返回 true。(一个证明是,如果我使用[self.docInteractionController presentPreviewAnimated:YES];
where docInteractionController is aUIDocumentInteractionController
文件会正确显示)。
该代码直接取自 Apple 示例代码DocInteraction。
previewController.dataSource = self;
previewController.delegate = self;
// start previewing the document at the current section index
previewController.currentPreviewItemIndex = 0; //I want the first (and only) document
[[self navigationController] pushViewController:previewController animated:YES];
[previewController release];
当前视图是 a QLPreviewControllerDataSource, QLPreviewControllerDelegate,
,委托方法如下:
- (NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *) controller
{
return self.documentURLs.count;
}
- (id)previewController:(QLPreviewController *)previewController previewItemAtIndex: (NSInteger)index
{
return [self.documentURLs objectAtIndex:index];
}
documentURLs
是一个 NSArray,其中包含文档的 fileURL。正确传递给UIDocumentInteractionController
显示器的相同 fileURL。我不一定要使用 QuickLook,我可能只依赖 UIDocumentInteractionController,但是它不起作用的事实真的很烦人。
先感谢您
乔瓦尼