首页 > 解决方案 > Swift 中的相机和库操作

问题描述

我是 Swift 编码的新手,我在使用相机和库时遇到了问题。我有这部分代码:

    @IBAction func camera(_ sender: Any) {

    if !UIImagePickerController.isSourceTypeAvailable(.camera) {
        return
    }

    let cameraPicker = UIImagePickerController()
    cameraPicker.delegate = self
    cameraPicker.sourceType = .camera
    cameraPicker.allowsEditing = false

    present(cameraPicker, animated: true)
}

@IBAction func openLibrary(_ sender: Any) {
    let picker = UIImagePickerController()
    picker.allowsEditing = false
    picker.delegate = self
    picker.sourceType = .photoLibrary
    present(picker, animated: true)
}

}

在 cameraPicker.delegate = self 和 picker.delegate = self 中会抛出一个像这样的错误:

无法将类型“ViewController”的值分配给类型“(UIImagePickerControllerDelegate & UINavigationControllerDelegate)?”

我真的不知道如何解决这个问题。如果有人可以帮助我解决这个问题,我将不胜感激,在此先感谢您!

标签: iosswiftdelegates

解决方案


只是你需要添加像

class ViewConroller: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
   ...
}

推荐阅读