【问题标题】:Does UIImagePickerController have to have a view controller embedded in a navigation controller?UIImagePickerController 是否必须在导航控制器中嵌入视图控制器?
【发布时间】:2020-12-08 00:05:18
【问题描述】:
UIImagePickerController 委托必须是嵌入在导航控制器中的视图控制器吗?只是因为我希望用户能够从中选择照片的视图控制器当前不在一个视图控制器中,所以我手动输入了一个带有条形按钮项目的导航栏。不得不将这些按钮的代码重新链接并重新粘贴到新按钮中会很烦人,并且有点担心我可能不得不用 segues 之类的东西来更改我的代码。如果我只是给 UIImagePickerController 的代表一个 UINavigationControllerDelegate ,那会起作用吗,还是必须将视图控制器嵌入到导航控制器中?
【问题讨论】:
标签:
ios
swift
xcode
uinavigationcontroller
uiimagepickercontroller
【解决方案1】:
不,它不必嵌入到 UINavigationController 中。您可以将 UIViewController 子类与协议 UIImagePickerControllerDelegate 和 UINavigationControllerDelegate 一致,它会正常工作。
class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
@objc func showImagePicker() {
let picker = UIImagePickerController()
picker.delegate = self
// do other stuff...
present(picker, animated: true)
}
}