按下按钮时如何在同一个下一个viewcontroller中显示不同的图像。
当按下第一个按钮时,它应该显示一个图像,当按下第二个按钮时,它应该在第二个视图控制器中显示其他图像。
可以通过使用三个不同的视图控制器来完成,并且使用segue只是避免添加许多视图控制器,我希望它在同一视图控制器中显示。
提前致谢。
答案 0 :(得分:2)
在原始视图控制器的prepare
上,设置应在下一个视图控制器上显示的图像名称。
在下一个视图控制器上,您只需读取它并命名并从中创建一个UIImage。
Origin VC:
var imageToLoad : String = ""
@IBAction func btnA(_ sender: UIButton) {
imageToLoad = "imageA"
}
@IBAction func btnB(_ sender: UIButton) {
imageToLoad = "imageB"
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destinarionVC = segue.destination as! NEXT_VIEW_CONTROLLER {
destinarionVC.imageName = self.imageToLoad
}
}
下一个VC:
var imageName : String = ""
var image : UIImage
override func viewDidLoad() { //Or wherever you need it to be
image = UIImage(name: imageName)
}
答案 1 :(得分:0)
尝试使用Carbonkit Framwork
https://github.com/ermalkaleci/CarbonKit
您可以使用单个视图控制器并更改动画,感觉就像移动到另一个视图控制器。实际上它移动到另一个视图控制器,但它与以前的视图控制器相同。