我需要设置一些可以通过启用 UIDocumentPickerViewController allowsMultipleSelection
来选择的文件,但是我没有找到任何可以用来设置它的属性。
有可能吗?
最佳答案
为此,您需要实现 UIDocumentPickerDelegate
的 didPickDocumentsAt
。它看起来像这样:
class YourViewController: UIDocumentPickerViewController {
let maxDocs = 3
override func viewDidLoad() {
super.viewDidLoad()
delegate = self
}
}
extension YourViewController: UIDocumentPickerDelegate {
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
// check to make sure you haven't hit your document cap specified above
guard urls.count < maxDocs else { return }
// if you pass the guard, business as usual
}
}
我以前没有上过这门课,所以可能会有一些粗糙的边缘,但这是诗人如何做的物理学方法。您可能需要对其进行一些改进,因为我不确定委托(delegate)方法的 URL 从何而来。您可以在调用此方法时插入断点并执行 po urls
以查看其中的内容。
在查看可用于此类的委托(delegate)方法时,我没有看到用于选择单个文档的委托(delegate)方法,因此您需要仔细研究以了解作为委托(delegate)方法中的参数的 URL 数组发生了什么并计算出处理 selected 和 !selected 之间的状态切换需要做多少簿记工作。
关于ios - 如何在 UIDocumentPickerViewController 中设置要选择的最大文件数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57232162/