如何从第一个viewController开始更改第二个viewController的标签?

时间:2014-07-30 07:01:39

标签: storyboard swift

我的Swift故事板中有两个viewControllers,如果我尝试更改第一个viewController的第二个视图控制器的文本标签,但我不能......我得到一个EXC_Breakpoint。

我正在尝试使用segue函数,但是存在同样的问题..更改标签,textFields,imageView有同样的问题......

我该怎么做?

谢谢!

编辑。我的代码:

 import UIKit

 class ViewController: UIViewController {

@IBOutlet var label1 : UILabel

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
    if(segue.identifier == "modal") {
        var vista = (segue.destinationViewController.visibleViewController as View2)
        vista.label2.text = "i am a new value"
    }
}
override func viewDidLoad() {
...

}

enter image description here

1 个答案:

答案 0 :(得分:0)

你需要通过segues传递值。

这里的示例:将一些值从MainView放到ModalView

// 1. create Instance of Window and pass a certain value

override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {

    if(segue.identifier == "modal") {

        var ModalWindow = (segue.destinationViewController.visibleViewController as ModalTableViewController)
        ModalWindow.value = "i am a new value"
    }
}

// in your other Viewcontroller you can use this variable  

class ModalTableViewController: {

    var value:String?

    override func viewDidLoad() {

    // No you can use your Value to set a Textfield value for example.

    }

}
相关问题