我的问题是,我对代码一般都是新手,并且不明白为什么我的变量值太晚刷新了。
在App中,视图更改为SecondViewController,控制台打印我在表中选择的行。但是SegueVar并没有包含我希望给他带来的功能的价值,当我点击我放在桌子上的单元格上的按钮时。
var uebergabe = String()
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "vonSchuljahrzuFach" {
let nextVC: SecondViewController = segue.destination as! SecondViewController
nextVC.SegueVar.append(uebergabe) // Übergabe des ausgewählten Schuljahres ergänzen
}
}
@IBAction func testButton(_ sender: UIButton) {
self.uebergabe = self.meineSchuljahre[sender.tag]
self.meineSchuljahre[0] = self.uebergabe
print(self.meineSchuljahre[0], "buttonfunktion")
}
答案 0 :(得分:0)
从您的代码中,我不明白为什么视图会更改为第二个视图(因此,我假设您在故事板中设置了segue触发器。)
您可以尝试从故事板中删除该segue触发器,然后从IBAction手动调用performSegue(withIdentifier:, sender:)
。
另外,请确保
prepare(forSegue:, sender:)
中执行(通过在let nextVC: SecondViewController = ...
之前设置断点。如果未执行if-closure,则问题可能是segue.identifier
未正确设置。