22

在我的应用程序中,我曾经UIDocumentPickerViewController允许用户选择文件(导入),但从 iOS 13 开始,该功能停止工作,基本上文档选择器已打开,但用户无法选择文件(点击文件无济于事) .

我做了一个简单的示例只是为了隔离代码:

class ViewController: UIViewController, UIDocumentPickerDelegate {

    @IBAction func openDocumentPicker(_ sender: Any) {
        let types = [String(kUTTypePDF)]
        let documentPickerViewController = UIDocumentPickerViewController(documentTypes: types, in: .import)
        documentPickerViewController.delegate = self
        present(documentPickerViewController, animated: true, completion: nil)
    }

    func documentPickerWasCancelled(_ controller: UIDocumentPickerViewController) {
        print("Cancelled")
    }

    func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
        print("didPickDocuments at \(urls)")
    }

}

示例项目: https ://github.com/Abreu0101/document-picker-iOS13-issue

参考: 在此处输入图像描述

4

3 回答 3

2

当我遇到这个问题时,我意识到从“浏览”选项卡中选择文件时它正在工作,因为我实现了方法“ didPickDocumentAt ”,但是当我从“最近”选项卡中点击文件时它不起作用。

为了让它在“最近”选项卡上工作,我要实现方法“ didPickDocument s At ”,它做同样的事情,但它处理一个 URL 数组。

于 2019-11-22T21:27:17.877 回答
2

在 Mojave 上存在问题,请确保将您的操作系统升级到 Catalina。

于 2019-12-21T19:52:25.303 回答
0

我在 iOS 13.2.2 上遇到了这个问题。更新至 iOS 13.2.3 修复了此问题,无需任何代码更改。

于 2019-11-19T08:28:11.993 回答