在swift中从图库中查看图像

问题描述:

我是IOS中的新成员,我希望在图像中显示图像,这是从图库中挑选出来的。我还在info.plist中添加了照片描述。但图像未在图像查看中显示。这里是我的代码:在swift中从图库中查看图像

import UIKit 

class ViewController: UIViewController, UIImagePickerControllerDelegate,UINavigationControllerDelegate { 
    @IBOutlet weak var img: UIImageView! 
    @IBOutlet weak var imageView: UIImageView! 
    @IBOutlet var chooseBuuton: UIButton! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

    } 

    @IBAction func btnClicked() { 
     let imagePicker = UIImagePickerController() 
     imagePicker.delegate = self 
     imagePicker.sourceType = UIImagePickerControllerSourceType.photoLibrary 
     imagePicker.allowsEditing = false 
     self.present(imagePicker, animated: true, completion: nil) 
    } 
    private func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) { 
     if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage { 
      //imageView.contentMode = .scaleAspectFit 
      img.image = pickedImage 
     } 
     self.dismiss(animated: true, completion: nil) 
    } 
} 
+0

您的代理'imagePickerController'被称为与否 –

+0

删除私人和尝试:) –

假设你正在使用斯威夫特3.X

你应该实现imagePickerController(_:didFinishPickingMediaWithInfo:)如下:

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { 
    if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage { 
     //imageView.contentMode = .scaleAspectFit 
     img.image = pickedImage 
    } 
    self.dismiss(animated: true, completion: nil) 
} 

它应该是好的去。有什么区别?井:

1-删除private

2-该方法的签名是不一样的,如文档中所提及的,info应该是类型[String : Any][String : AnyObject]的。

+0

[字符串:任何]不[字符串:AnyObject]她可能被用来迅速2.x的.. –

+0

@SalmanGhumsani是的,这是正确的;我认为这就是为什么该方法不被称为... –

+0

谢谢萨勒曼Ghumsani先生...它工作正常 –