在我的应用程序中,我使用UIDocumentInteractionController将pdf文档打开到acrobat reader(或任何其他查看者)中,但是因为iOS6它不再起作用。
我尝试了很多东西,最后一次来自here:
UIDocumentInteractionController *docController = [[UIDocumentInteractionController alloc]init];
docController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:documentsDirectory]];
docControler.UTI = @"com.adobe.pdf";
docController.delegate = self;
CGrect navRect = self.view.frame;
[docController presentOpenInMenuFromRect:navRect inView:self.view animated:YES];
当此代码运行时,我的应用程序完全冻结。 我试过“presentOpenInMenuFromBarButtonItem”,但我有同样的问题。
答案 0 :(得分:4)
将控制器分配给强引用属性:
@property (nonatomic, strong) UIDocumentInteractionController *docController;
答案 1 :(得分:2)
我在iOS 6中成功使用了UIDocumentInteractionController。示例代码:
self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:myPDFPath]];
[self.documentInteractionController presentOpenInMenuFromBarButtonItem:self.actionButton animated:YES];
您需要保留对UIDocumentInteractionController的引用,否则它将在作业完成之前被释放。
此外,看起来您正在使用文档文件夹的路径,而不是特定文件的路径。我认为这不会起作用 - 将路径传递给特定文件。