Ios 将数据传递到表视图控制器

Ios 将数据传递到表视图控制器,ios,uitableview,swift,Ios,Uitableview,Swift,我有一个视图控制器,在这个视图控制器中有一个tableview。我正在从表视图控制器管理表。但我需要将数据从视图控制器发送到tableview控制器。我该怎么做 这是我的视图控制器: class SettingsViewController: UIViewController { ... } 这是我的表视图控制器: class SettingsTableViewController:UITableViewController { @IBOutlet var notification

我有一个视图控制器,在这个视图控制器中有一个tableview。我正在从表视图控制器管理表。但我需要将数据从视图控制器发送到tableview控制器。我该怎么做

这是我的视图控制器:

class SettingsViewController: UIViewController {
...
}
这是我的表视图控制器:

class SettingsTableViewController:UITableViewController {


    @IBOutlet var notificationsSwitch: UISwitch!
    @IBAction func notificationsClicked(sender: UISwitch) {
        if notificationsSwitch.on {
            println("notifications on")
        }else{
            println("notifications off")
        }
    }

}
故事板:


将动作序列与prepareForSegue功能结合使用。本文介绍:

为打开SettingsTableViewController的推送序列添加标识符,并将以下功能添加到ViewController

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
    if segue.identifier == "unwindToTableView" {
        let destinationController = segue.destinationViewController as! SettingsTableViewController
        destinationController.notificationsSwitch.setOn(true, animated:true)
    }
}
假设您希望将一些布尔值从settingsViewController传递到表中,您将得到如下结果:

var notifications: Bool = false
在Interface builder中,向推送序列添加标识符,如下所示:

编辑:最初对问题有点误解,因为数据不是从SettingsTableViewController传递到settingsViewController,而是从另一个方向传递。使用segues和prepareForSegue通常是将数据传递给另一个viewController的方法

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
    if segue.identifier == "unwindToTableView" {
        let destinationController = segue.destinationViewController as! SettingsTableViewController
        destinationController.notificationsSwitch.setOn(true, animated:true)
    }
}

edit2:更改了在prepareForSegue函数中设置开关的方式。

println?这不是Java吗?可能是我尝试过的@gutenmorgenuhu的重复,但我得到了以下错误致命错误:在展开可选值时意外发现nil如何解决?要回答这个问题,我们需要更多代码:错误发生在哪里,何时发生。etc@Okan你注意到我评论的链接了吗?我没有使用segues进行此操作。我不明白你的答案。分段是在视图控制器之间传递数据的方式。我已经为你的问题编辑了我的答案。我现在明白了。但我还有一个问题。我正在从服务器获取数据,所以我需要等待数据,然后当数据到来时,我需要在segue中使用。我该怎么做?@RuudKalis,“就是要走的路。”只要你使用segues。(我认为OP正在使用)。同意@Firo。。查看Okan的IB builder屏幕截图,有一个用于打开设置StableViewController的推送序列。