我在准备segue中编写swift代码时遇到了问题。我编写的代码只是为了将文本框内的文字转移到另一个视图上的标签,但是当我转到另一页时,这会崩溃。
var motionMovement : SecondViewController = segue.destinationViewController as SecondViewController
motionMovement.laBel.text = teXt.text
然后我添加了这个以免让它崩溃
if segue.identifier == "hi"{
var motionMovement : SecondViewController = segue.destinationViewController as SecondViewController
motionMovement.laBel.text = teXt.text
}
但现在它并没有改变标签。
答案 0 :(得分:3)
在prepareForSegue:
中使用该商店时,我们不会分配商店。您必须在String
中创建一个SecondViewController
变量,以便在prepareForSegue:
中存储标签文字然后在viewDidLoad
SecondViewController
中将其设置为所需的UILabel
SecondViewController
中的
var labelString: String?
viewDidLoad() {
laBel.text = labelString
}
和prepareForSegue
if segue.identifier == "hi"{
var motionMovement : SecondViewController = segue.destinationViewController as SecondViewController
motionMovement.labelString = teXt.text
}