iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – 如何检查UIDocumentInteractionController由于iPad上缺少外部应用程序而无法打开文档?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用UIDocumenTinteractionController显示弹出菜单“打开…”,以便用户可以在其他应用程序中打开文档。

方法presentOpenInMenuFromBarButtonItem:动画:如果没有应用程序能够打开给定的文档(菜单@L_673_5@),则返回NO。但是我等到现在为止已经太晚了。如果不可能,而不是提高对用户的期望,我想禁用启动该开放的按钮,然后说“抱歉,不可能打开它”。@H_674_7@

是否可以查询系统以查看是否至少有一个注册了特定文档类型的应用程序?我在QLPreviewController中检查过canPreviewItem:但是它似乎不支持UIDocumenTinteractionController可以处理的相同文档类型。@H_674_7@

解决方法

[编辑]不适用于iOS 6.0(见评论)

看来,dismissMenuAnimated(根本没有动画)是关键:@H_674_7@

-(BOOL)canOpenDocumentWithURL:(NSURL*)url inView:(UIView*)view {
    BOOL canOpen = NO;
    UIDocumenTinteractionController* docController = [UIDocumenTinteractionController 
                                                   interactionControllerWithURL:url];
    if (docController)
    {
        docController.delegate = self;
        canOpen = [docController presentOpenInMenuFromRect:CGRectZero
                                   inView:self.view animated:NO];                   
        [docController dismissMenuAnimated:NO];
    }
    return canOpen;
}

如果至少有一个应用程序能够打开url指向的文件它将返回YES。至少它在我的情况(KMZ文件),在/不用DropBox应用程序测试iPhone iOS 4.3。实际上,即使url没有指向实际的文件(即@“test.kmz”),它似乎也可以工作,但是我不会依赖于所有的文件类型。@H_674_7@

大佬总结

以上是大佬教程为你收集整理的iphone – 如何检查UIDocumentInteractionController由于iPad上缺少外部应用程序而无法打开文档?全部内容,希望文章能够帮你解决iphone – 如何检查UIDocumentInteractionController由于iPad上缺少外部应用程序而无法打开文档?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。