iOS Swift - 呈现视图控制器并在它们之间传递信息

时间:2016-04-11 21:58:46

标签: ios swift model-view-controller

我正在为Udacity的iOS Developer Nanodegree学习,我无法弄清楚如何在视图控制器之间传递信息。

在此视频中,教师要求我们使用代码,segue和amp;代码和segue。

https://www.youtube.com/watch?v=zGzu5PcP8TI

我花了好几个小时试图理解这一点,但我没有到达任何地方。是否有任何资源可以清楚地解释这一点?

1 个答案:

答案 0 :(得分:0)

假设你有VC1和VC2(两个UIViewController类)并且它们都在同一个Storyboard文件中。

VC1和VC2都有一个属性:

var aProperty: String 

VC1有一个UITextField,当它改变时,你将aProperty设置为文本字段的文本。

现在,您想要显示VC2和VC2需要来自VC1的aProperty的值。

如果你设置一个从VC1到VC2的segue,当它被触发时,将调用VC1中的这个函数(如果它存在)

 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
     // You can set up VC2 here
 }

例如:

 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
     if let vc2 = sender as? VC2 {
          vc2.aProperty = vc1.aProperty
     }
 }