gpt4 book ai didi

swift - 所选图像不会更改之前显示的图像

转载 作者:行者123 更新时间:2023-11-30 10:33:42 25 4
gpt4 key购买 nike

我有一个简单的设置可以从相机或照片库中选择图像。当我选择一张新照片时,它与应用程序加载时使用的原始照片没有变化。

我认为这与代码的层次结构有关(不确定我是否以正确的术语使用它)。我将代码读取为我选择的图像,然后将变量“originalImage”设置为所选图像。那么应该显示正确吗?好吧,剧透,我错了。

import UIKit

class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

var originalImage = UIImage(named: "crossSection2.jpg")!

@IBOutlet weak var imageView: UIImageView!

override func viewDidLoad() {
super.viewDidLoad()
imageView.image = originalImage
}
@IBAction func onCameraClicked(_ sender: Any) {
let ac = UIAlertController(title: "Choose Image", message: nil, preferredStyle: .actionSheet)
ac.addAction(UIAlertAction(title: "Camera", style: .default, handler: { (action) in
self.showPicker(sourceType: .camera)
}))
ac.addAction(UIAlertAction(title: "Library", style: .default, handler: { (action) in
self.showPicker(sourceType: .photoLibrary)
}))
ac.addAction(UIAlertAction(title: "Cancel", style: .default, handler: nil))
self.present(ac, animated: true, completion: nil)
}

func showPicker(sourceType: UIImagePickerController.SourceType) {
let picker = UIImagePickerController()
picker.delegate = self
picker.sourceType = sourceType
self.present(picker, animated: true, completion: nil)
}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingImage newImage : UIImage, editingInfo: [String : AnyObject]?) {
dismiss(animated: true, completion: nil)
self.originalImage = newImage
self.imageView.image = newImage
}
}

最佳答案

来自https://developer.apple.com/documentation/uikit/uiimagepickercontrollerdelegate/1619152-imagepickercontroller

Deprecated Use imagePickerController:didFinishPickingMediaWithInfo: instead.

所以,尝试将代码更改为:

  func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
dismiss(animated: true, completion: nil)
self.originalImage = info[.originalImage] as! UIImage
self.imageView.image = (info[.originalImage] as! UIImage)
}

关于swift - 所选图像不会更改之前显示的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58554436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com