UIImagePickerController是否必须在导航控制器中嵌入视图控制器?

时间:2020-08-18 18:43:39

标签: ios swift xcode uinavigationcontroller uiimagepickercontroller

UIImagePickerController委托是否必须是嵌入在导航控制器中的视图控制器?只是问一下,因为我希望用户能够从中选择照片的视图控制器不在其中,因此我手动输入了带有条形按钮项目的导航栏。必须将这些按钮的代码重新链接并重新粘贴到新的按钮中,这会很烦人,并且稍微担心我可能需要使用segue和其他方法更改代码。如果我只是给UIImagePickerController的委托一个UINavigationControllerDelegate放在顶部,那行得通,还是必须将视图控制器嵌入到导航控制器中?

1 个答案:

答案 0 :(得分:0)

否,不必将其嵌入UINavigationController中。您可以仅使UIViewController子类符合协议UIImagePickerControllerDelegateUINavigationControllerDelegate,它就可以正常工作。

class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

    @objc func showImagePicker() {
        let picker = UIImagePickerController()
        picker.delegate = self
        // do other stuff...
        present(picker, animated: true)
    }
}