问题描述
我想从框架初始化 UIDocumentPickerViewController。但是,在框架中使用以下代码时,文件 (.pdf) 在文档选择器中显示为灰色。当 UIDocumentPickerViewController 在主应用程序目标中初始化时,代码工作正常。这是我用的。
let documentPicker = UIDocumentPickerViewController(foropeningContentTypes: [.pdf])
documentPicker.delegate = self
present(documentPicker,animated: true,completion: nil)
解决方法
由于框架中有 UIDocumentPickerViewController
,因此更好的方法是使用 custom UIViewController
并在该视图控制器中实现 UIDocumentPickerViewController
的所有委托。然后在您的主应用程序中,您可以继承该自定义 UIViewController 并调用父 API 来加载 UIDocumentPickerViewController
。
我的问题是,我试图从 UIDocumentPickerViewController
呈现 window.rootViewController
,因为我无法访问来自我的主要目标的 UIViewController
。我在我的框架中创建了一个 UIViewController
并从那里展示了 UIDocumentPickerViewController
并且它起作用了。但是,我仍然不确定从 UIDocumentPickerViewController
和真实的 window.rootViewController
对象呈现 UIViewController
有什么区别。嗯,两者都是 UIViewControllers