在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)
}
}
假设你正在使用斯威夫特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]
的。
[字符串:任何]不[字符串:AnyObject]她可能被用来迅速2.x的.. –
@SalmanGhumsani是的,这是正确的;我认为这就是为什么该方法不被称为... –
谢谢萨勒曼Ghumsani先生...它工作正常 –
您的代理'imagePickerController'被称为与否 –
删除私人和尝试:) –