Ios 如何将UIImage从UIImagePickerController传递到另一个UIViewController?

Ios 如何将UIImage从UIImagePickerController传递到另一个UIViewController?,ios,xcode,swift3,Ios,Xcode,Swift3,这几天我一直在想办法。我在google和stack中做了大量的搜索,但没有找到有效或有意义的东西。我是Swift新手,但有一些编程背景 当前,应用程序的这一部分会拍摄一张照片,在当前viewcontroller(VCPhoto)上显示它,移动到另一个控制器,显示动画viewcontroller(VCQScan),然后移动到结果viewcontroller(VCResult)。我正在尝试将图像从VCPhoto移动到VCResult。我找到的一个答案是这个 在我的代码中,它在下一个viewcont

这几天我一直在想办法。我在google和stack中做了大量的搜索,但没有找到有效或有意义的东西。我是Swift新手,但有一些编程背景

当前,应用程序的这一部分会拍摄一张照片,在当前viewcontroller(VCPhoto)上显示它,移动到另一个控制器,显示动画viewcontroller(VCQScan),然后移动到结果viewcontroller(VCResult)。我正在尝试将图像从VCPhoto移动到VCResult。我找到的一个答案是这个

在我的代码中,它在下一个viewcontroller中返回空值

录像机 {

VCScan{

@IBOutlet var catScanImage: UIImageView!
@IBOutlet weak var browsingImage: UIImageView!
var newImage: UIImage!


override func viewDidLoad() {
    super.viewDidLoad()

    browsingImage.image = newImage


    Timer.scheduledTimer(timeInterval: 4.0, target: self, selector: #selector(catScan), userInfo: nil, repeats: false)

    catScanImage.animationImages = [
    UIImage(named: "catPerc0.png")!,
    UIImage(named: "catPerc1.png")!,
    UIImage(named: "catPerc2.png")!,
    UIImage(named: "catPerc3.png")!,
    UIImage(named: "catPerc4.png")!
    ]

    catScanImage.animationDuration = 0.4
    catScanImage.startAnimating()
    // Do any additional setup after loading the view, typically from a nib.
}

func catScan() {
    self.performSegue(withIdentifier: "lastSegue", sender: self)
}
func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    if segue.identifier == "lastSegue" {
        let dvc = segue.destination as! VCResult
        dvc.newImage = browsingImage.image
    }
}
}

上面的prepare for segue正在尝试将其移动到下一个VC,但它并没有走得那么远,它会出错

    browsingImage.image = newImage
在VCQScan中,即使我可以在VCPhoto上的调试器中看到它,它似乎也不会移动图像…感谢您的帮助!!!!希望这是足够的信息,如果不让我知道的话!再说一次,我是Swift和Xcode新手,所以我可能错过了一些非常愚蠢的东西

调试器输出 2017-04-03 20:08:33.637110-0700 OatQuizApp[3314:1066322[OatQuizApp.VCResult按钮按下:]:未识别的选择器发送到实例0x100b1fdb0 2017-04-03 20:08:33.638569-0700 Otquizapp[3314:1066322]*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[Otquizapp.VCResult按钮按下:]:未识别的选择器发送到实例0x100b1fdb0' *第一次抛出调用堆栈: (0x18ca7efd8 0x18b4e0538 0x18ca85ef4 0x18ca82f4c 0x18c97ed2c 0x192be30ec 0x192be306c 0x192bcd5e0 0x192be2950 0x192be246c 0x192bdd804 0x192bae418 0x1933a7f64 0x1933a2aec 0x18ca2d424 0x18ca2cd94 0x18CA2A0 0x18c95ad94 0x18C4074 0x192c13130 0x1000cf900 0x18B969C)
libc++abi.dylib:以NSException类型的未捕获异常终止

我解决了问题。至少最初,所有代码都是正确的。我没有注意UIImageView,我在VCQScan上没有一个,只是添加了一个插座,这就是它显示为null的原因。出于某种原因,我认为UIImageView正在传送图像…我想我盯着它看的时间太长了。感谢您的查看!

请分享错误描述。添加了错误!
    browsingImage.image = newImage