2017-03-20 39 views
1

我有iCloud的文件导入 我得到空的选项我选择从(iCloud中,谷歌驱动器,Dropbox的...等等) 我有iCloud的驱动器和数据导入的地方后一个问题权利是对UIDocumentMenuViewController空白选项

那么,什么是错的代码或者是有关于设置的任何地方都可能导致此问题?

这里是代码

@IBAction func selectionButtonAction(_ sender: Any) { 

     let types = [kUTTypePDF as String ,kUTTypePNG as String, kUTTypeImage as String,kUTTypeJPEG as String] 
     UINavigationBar.appearance().isTranslucent = true 
     let documentMenu = UIDocumentMenuViewController(documentTypes: types, in: .import) 
     documentMenu.delegate = self 
     self.viewController?.present(documentMenu, animated: true, completion: nil) 
    } 

    func documentMenu(_ documentMenu: UIDocumentMenuViewController, didPickDocumentPicker documentPicker: UIDocumentPickerViewController) { 
     documentMenu.delegate = self 
     self.viewController?.present(documentMenu, animated: true, completion: nil) 
    } 


    func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentAt url: URL) { 
     if controller.documentPickerMode == .import { 
// do staff 
     } 
    } 

这是我得到当我运行iOS上的10

应用程序时,我按选择文件

When i Press choose File

然后按在iCloud上

After pressing on iCloud

这就是我得到的,如果我上运行的iOS 9应用程序:

That's what I get if I run the app on iOS 9


我敢肯定,我有数据有喜欢这里的icloud的驱动程序

Dirve Data

而权利

enter image description here

回答

0

我有同样的问题,试图呈现UIDocumentMenuViewController的已使用实例时。 我懒洋洋地实例化这样的:

lazy var documentMenuController: UIDocumentMenuViewController = { 
    let controller = UIDocumentMenuViewController(documentTypes: ["com.adobe.pdf"], in: .import) 
    controller.delegate = self 
    return controller 
}() 

其中,除了第一次每次产生这个错误。

所以我改变了代码,以这样的:

var documentMenuController: UIDocumentMenuViewController { 
    let controller = UIDocumentMenuViewController(documentTypes: ["com.adobe.pdf"], in: .import) 
    controller.delegate = self 
    return controller 
} 

要对物业的每次访问获取新的实例。