【问题标题】:Picking image from photo library从照片库中挑选图像
【发布时间】:2016-09-18 14:28:14
【问题描述】:

我正在关注这个Apple Tutorial,但我收到了这个错误:

创建未知类型的图像格式是错误的

从照片库中选择图像时。

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

【问题讨论】:

标签: ios swift uiimagepickercontroller


【解决方案1】:

试试这个...我是这样做的。

 class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

    @IBOutlet weak var photoImageView: UIImageView!
    var standardImg: UIImage!
    var imagePicker: UIImagePickerController!

    override func viewDidLoad() {
        super.viewDidLoad()


    }

    func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
        if let image = info[UIImagePickerControllerOriginalImage] as? UIImage {
            standardImg = image
            photoImageView.image = standardImg
        }
            imagePicker.dismiss(animated: true, completion: nil)
    }

    @IBAction func addImage(_ sender: UIButton) {

        imagePicker = UIImagePickerController()
        imagePicker.delegate = self
        present(imagePicker, animated: true, completion: nil)
//        sender.setImage(standardImg, for: UIControlState())

    }
}

【讨论】:

  • 我将 selectedImage 更改为 image 并得到同样的错误。
  • 你也改了功能吗?如果您看到我的函数参数,它们与您的不同..
  • 同时创建一个var imagePicker: UIImagePickerController!然后说 imagePicker.dismiss
  • 是的,我也更改了函数参数:) 我添加了var imagePicker: UIImagePickerController! imagePicker.dismiss 而不是dismiss(animated: true, completion: nil) 仍然是同样的错误。选择图像后,它返回应用程序,我仍然有默认照片
  • 我再次编辑了我的答案。这就是我所做的。编辑:不要忘记在你的类类型之后放入委托(“UIImagePickerControllerDelegate”)
【解决方案2】:

解决办法是

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject])
{

    if let selectedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {
      photoImageView.image = selectedImage
    } 
    else{
       print("Picking image is not in correct format")
    }

    self.dismiss(animated: true, completion: nil)
}

【讨论】:

    猜你喜欢
    • 2021-01-10
    • 1970-01-01
    • 2014-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多