Swift 4:未调用UIImagePicker委托方法

时间:2017-11-30 14:24:38

标签: ios swift uiimagepickercontroller

我有一个UIImageView,它有我的"个人资料图片"内。当我点击它时,它会调用一个显示我的UIImagePickerController的函数。这很好用。我的问题是我的委托方法很简单,没有被调用。当我添加断点时,根本没有断点。我在我的项目的其他地方使用了完全相同的方法,它工作正常,因此我的info.plist文件没有任何问题。有人知道我做错了什么吗?谢谢......

extension ChatLogController: UIImagePickerControllerDelegate, UINavigationControllerDelegate {

    func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
        self.dismiss(animated: true, completion: nil)
    }

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
        let image = info[UIImagePickerControllerOriginalImage] as! UIImage
        profileImageView.image = image
        self.dismiss(animated: true, completion: nil)
    }

    @objc func handlePresentImagePicker() {
        let imagePicker = UIImagePickerController()
        imagePicker.delegate = self
        imagePicker.sourceType = .photoLibrary
        self.present(imagePicker, animated: true, completion: nil)
    }
}

1 个答案:

答案 0 :(得分:0)

我意识到问题在于我正在使用自定义转换(转换涉及我能够向右滑动以关闭我的控制器)。一旦我评论了与之相关的所有代码,一切都运行良好。非常不幸的是,我必须摆脱我的过渡,但嘿,它现在有效!