2

我正在开发一个应用程序,它能够从其他云资源导入音频文件,这些资源提供 UIDocumentPickerViewControllerExtenstion 来选择文件,但左上角有一个位置按钮,我想删除它。

下面是我的代码:

let menupicker = UIDocumentMenuViewController(documentTypes: [kUTTypeAudio as String], in: .import)
menupicker.delegate = self
self.present(menupicker, animated: true, completion: nil)



func documentMenu(_ documentMenu: UIDocumentMenuViewController, didPickDocumentPicker documentPicker: UIDocumentPickerViewController) {
    documentPicker.delegate = self
    documentPicker.navigationItem.leftBarButtonItem = nil
    self.present(documentPicker, animated: true) { 
        documentPicker.navigationItem.leftBarButtonItem = nil
        documentPicker.navigationItem.backBarButtonItem = nil
        documentPicker.navigationItem.hidesBackButton = true
    }
}

在此处输入图像描述

4

1 回答 1

0

我正在寻找相同的解决方案,但不能。根据我的理解,这是不可能的。如果您遍历 UIDocumentPickerViewController,它实际上有一个类型为“_UIResilientRemoteViewContainerViewController”的子视图控制器

let picker = UIDocumentPickerViewController(documentTypes: supportDocTypes, in: .import)
picker.delegate = self
present(picker, animated: true) {
    print(picker.childViewControllers) // you will get something like this: [<_UIResilientRemoteViewContainerViewController: 0x102e956c0>]
}

这是无法访问的,但是我们可以通过循环访问它,最终您将获得一些其他私有组件,例如_RemoteView。

于 2017-08-22T06:24:04.363 回答