UIDocumentMenuViewController initWithDocumentTypes:inMode:只能使用模式Import或Open调用

时间:2017-03-24 00:54:09

标签: ios crash uikit icloud-documents

在我的iOS应用中,我打开UIDocumentPickerModeImport。当我使用UIDocumentPickerModeExportToService模式调用它时,一切正常(我的所有iCloud权利都已设置完毕)。

但是,当我使用UIDocumentMenuViewController *exportMenu = [[UIDocumentMenuViewController alloc] initWithDocumentTypes:@[@"public.image"] inMode:UIDocumentPickerModeExportToService]; exportMenu.delegate = self; [self presentViewController:exportMenu animated:YES completion:nil]; 调用它时,应用程序崩溃并出现此错误:

  

断言失败 - [UIDocumentMenuViewController initWithDocumentTypes:inMode:],/ BuildRoot / Library / Cache / com.apple.xbs / Source / UIKit / UIKit-3600.6.22 / UIDocumentMenuViewController.m:71

     

由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:' - [UIDocumentMenuViewController initWithDocumentTypes:inMode:]只能使用模式Import或Open'

进行调用

我做错了什么?为什么只能使用导入或打开模式调用它?

我的代码:

filename = QFileDialog.getSaveFileName(self, "Save File", 
     d.now().strftime("%Y-%m-%d_%Hh%M")+".csv", "All Files (*);; CSV Files (*.csv)")

这种情况发生在模拟器和我测试过的两台设备上(都运行iOS 10)。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

我刚刚找到答案:当想要导出时,您需要使用不同的init方法:initWithURL:inMode:

我希望在这种情况下异常会更有帮助:)