首页 文章

不能使用IOS swift中的“二手照片”UIImagePickerController [复制]

提问于
浏览
0

这个问题在这里已有答案:

我是新手......实际上我是Any Apple产品的新手 . 所以基本上我试图学习如何建造和飞机,同时试图飞行,并学习如何飞行它 . 当这个免责声明在那里我想要一些帮助;)

我的问题是,在我用相机拍摄之后,我无法让UIImagePickerController返回图像给我 . 我想我缺少一些基本的东西,或者至少有一些重要的东西可以让它起作用;)但我不能为我的生活找出我做错的地方 .

这就是我认为我的ViewController的相关部分,但是问你是否觉得我要留下重要的东西:

@IBAction func shootPhoto(_ sender: UIButton) {
    if UIImagePickerController.isSourceTypeAvailable(.camera) {

        picker.allowsEditing = false
        picker.sourceType = UIImagePickerControllerSourceType.camera
        picker.cameraCaptureMode = .photo
        picker.modalPresentationStyle = .fullScreen

        present(picker,animated: true,completion: nil)

    }
    else
    {
        noCamera()
    }
}



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

    let image: UIImage = info[UIImagePickerControllerOriginalImage] as! UIImage;
    myImageView.contentMode = .scaleToFill

    myImageView.image = image
    self.dismiss(animated:true, completion: nil)

}

我必须承认我不知道我正在使用什么版本的swift . 我假设是最新的,因为我刚刚更新了MacBook Pro,直到它无法再做了 . 我正在使用Xcode 8.2.1,我正在使用IOS 10.2.1在iPhone上进行测试 . 我认为它是iPhone 7s .

任何帮助表示赞赏

Edit: 我在这个函数中设置了如果那是错误的地方我会移动它我只是无法弄清楚在哪里 . ?

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view
    picker.delegate = self
}

我知道这可能是另一个问题的重复,但是当我点击那个时他们正在处理照片库 .

我正在尝试处理相机,我遇到的问题是将图像返回到我的imagePickerController(_ picker:UIImagePickerController,didFinishPickingMediaWithInfo info:[String:AnyObject])...

他们谈论的内容似乎并不适合我,他们正在使用我被告知被剥夺的东西 .

edit 2:

这是我初始化选择器对象以及如何定义类的方法

class ViewController: UIViewController,UINavigationControllerDelegate,UIImagePickerControllerDelegate {
    let picker = UIImagePickerController()


    @IBOutlet weak var myImageView: UIImageView!

1 回答

  • 0
    private func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    
            if let image = info[UIImagePickerControllerOriginalImage] as? UIImage {
                    myImageView.image = image
             } else if let image = info[UIImagePickerControllerEditedImage] as? UIImage {
                myImageView.image = image
             }
            myImageView.contentMode = .scaleToFill
            self.dismiss(animated:true, completion: nil)
        }
    

相关问题