很容易解释的代码,我的问题是第一张打印图显示正确的值,但第二张打印图始终显示0。我试图将步进器的值传递给我的下一个视图控制器(calcVC)。
编辑:忘记提及我的问题是,当我单击一个按钮时触发了对CalcVC的取消同步,这就是我释放该值时发生的。另外,这段代码在TableViewCellVC中,而我的解脱是从TableViewVC到CalcVC,这就是为什么我在CalcVC上遇到问题的原因。
最终编辑:通过创建全局变量对其进行了修复
var stepperValue = 1
@IBAction func stepperValueChanged(_ sender: Any) {
stepperValue = Int(stepper.value)
print(stepperValue)
stepperLabel.text = String(stepperValue)
let CalcVC = CalculatorVC()
stepperValue = CalcVC.calcVCStepperValue
print(stepperValue)
}
您需要将stepperValue
的值分配给CalcVC.calcVCStepperValue
。目前,您只是在创建CalcVC
,然后打印出calcVCStepperValue
的默认值。
let CalcVC = CalculatorVC()
CalcVC.calcVCStepperValue = stepperValue
stepperValue = CalcVC.calcVCStepperValue
print(stepperValue)
如果您使用segue进行此操作,则无法创建视图控制器的新实例。相反,您需要在要解散的视图控制器上实现prepareForSegue
功能,并使用segue参数访问destinationViewController
。