有人可以告诉我当我按下凸轮按钮时我的应用程序崩溃的原因

问题描述 投票:0回答:1

我有一个我选择删除的课程,之后我的添加不断崩溃。

下面是按钮中的内容

@IBAction func cameraButton_TouchUpInside(_ sender: Any) {
        let imagePickerController = ImagePickerController()
        imagePickerController.delegate = self
        imagePickerController.imageLimit = 1
        present(imagePickerController, animated: true, completion: nil)
    }

func wrapperDidPress(_ imagePicker: ImagePickerController, images: [UIImage]) {

    }
    func doneButtonDidPress(_ imagePicker: ImagePickerController, images: [UIImage]) {
        guard let image = images.first else {
            dismiss(animated: true, completion: nil)
            return
        }


   if let image = info["UIImagePickerControllerOriginalImage"] as? UIImage{
            selectedImage = image
            photo.image = image
            dismiss(animated: true, completion: nil)
//            dismiss(animated: true, completion: {
//                self.performSegue(withIdentifier: "Camera", sender: nil)
//            })
        }

当我尝试从库中选择时,如果我取消注释我的应用程序上面的内容崩溃了

更多

//    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
//        if segue.identifier == "filter_segue" {
//            let filterVC = segue.destination as! FilterViewController
//            filterVC.selectedImage = self.selectedImage
//            filterVC.delegate = self
//        }
   // }

//extension CameraViewController: FilterViewControllerDelegate {
//    func updatePhoto(image: UIImage) {
//        self.photo.image = image
//        self.selectedImage = image
//    }
//}
swift uiimagepickercontroller
1个回答
1
投票

崩溃可能只是因为这些:

  • 没有将必要的权限添加到info.plist(在这种情况下,您将在日志中收到.plist文件中缺少权限的消息。
  • 对象没有连接到正确的IBOutlet(在这种情况下,文件中IBOutlet旁边的圆圈将为空,这意味着它没有连接到任何对象。)

对于您的案例,您的info.plist中缺少权限。你应该添加NSCameraUsageDescription,该值是一个字符串,当要求用户打开摄像机的权限时,它将显示在权限对话框中。它会是这样的:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.