将数据从ViewController传递回根ViewController?

时间:2015-08-20 21:56:50

标签: ios objective-c swift cocoa-touch uistoryboardsegue

我想知道如何在VC3和VC1之间传递数据。

我所拥有的是根视图(VC1)。然后输入tableView,如果选择一个项目,则输入tableView2(VC3) - category - sub category picker。

到目前为止我所做的是在VC1中声明:

@IBAction func unwindToVC1(segue: UIStoryboardSegue) {

 }

然后在故事板中我控制 - 将黄色按钮拖到VC3中的红色按钮,然后选择" unwindToVC1"作为动作,然后我命名了segue。

然后我按performSegueWithIdentifier()

在VC3中触发segue
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "Vc1" {
            let toView = segue.destinationViewController as! myRootVc

            let test = "test string"

            toView.test = test

        }
    }

它几乎可以工作,我最终在VC1中但是传递的值在VC1中显示为nil,即使我之前在vc1中声明了它:

var test:String?

1 个答案:

答案 0 :(得分:0)

你正在使用segues在VC之间传递数据!当你从子类别中选择了一个anitem时,你就可以使用VC3了。您可以使用代表