我是 Swift 新手... 事实上,我对任何苹果产品都是新手。所以基本上我正在尝试学习如何 build 和飞行飞机,同时尝试飞行并学习如何驾驶它。当此免责声明发布时,我需要一些帮助;)
我的问题是,在我用相机拍摄一张图像后,我无法让 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。
感谢任何帮助
编辑: 我在这个函数中进行设置,如果这是错误的位置,我会将其移动,但我只是不知道移动到哪里。 ?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view
picker.delegate = self
}
我知道这可能与另一个问题重复,但是当我单击该问题时,他们正在处理照片库。
我正在尝试处理相机,但在将图像返回到 imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) 时遇到问题...
他们谈论的内容似乎对我不起作用,而且他们正在使用我被告知已贬值的东西。
编辑2:
这就是我初始化选择器对象以及定义类的方式
class ViewController: UIViewController,UINavigationControllerDelegate,UIImagePickerControllerDelegate {
let picker = UIImagePickerController()
@IBOutlet weak var myImageView: UIImageView!
最佳答案
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)
}
关于ios - 无法在 IOS swift UIImagePickerController 中使用 "used photo",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42268672/