在prepareforsegue中更改标签

时间:2015-04-02 20:42:13

标签: swift

我在准备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
    }

但现在它并没有改变标签。

1 个答案:

答案 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
}