Ios 致命错误:在UITableviewDataSource、UITableviewDelegate中展开可选值时意外发现nil

Ios 致命错误:在UITableviewDataSource、UITableviewDelegate中展开可选值时意外发现nil,ios,uitableview,swift,Ios,Uitableview,Swift,我在swift中遇到过类似的web视图问题,但了解这个问题肯定会帮助我了解我的web视图问题。总之,我在swift中创建了一个ViewController。我在视图控制器上拖动了3个TableView。从nib文件中,我将所有tableview出口拖拽并连接到我的UIViewController类(iOS基础)。然而,在我看来,确实加载了我声明委托的第一行代码 class DashBoardViewController: UIViewController, UITableViewData

我在swift中遇到过类似的web视图问题,但了解这个问题肯定会帮助我了解我的web视图问题。总之,我在swift中创建了一个ViewController。我在视图控制器上拖动了3个TableView。从nib文件中,我将所有tableview出口拖拽并连接到我的UIViewController类(iOS基础)。然而,在我看来,确实加载了我声明委托的第一行代码

    class DashBoardViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
    @IBOutlet var whatsNew: UITableView!
    @IBOutlet var trending: UITableView!
    @IBOutlet var comingUpNext: UITableView!
    override func viewDidLoad() {
        super.viewDidLoad()

        ///Crashes
        whatsNew.delegate = self

        whatsNew.dataSource = self


        trending.delegate = self

        trending.dataSource = self


        comingUpNext.delegate = self

        comingUpNext.dataSource = self

    }
}
当它崩溃时,日志显示:致命错误:在展开可选值时意外发现nil


这对我来说毫无意义。在Objective-c中,您可以轻松地拖放类上的任何出口,这样就可以了。我必须打开所有的表视图并在swift中初始化它们吗?为什么在我将它们连接到类时它们没有初始化?这是苹果方面的错误,还是语法上的改变

阅读有关Swift可选变量的文档…如何实例化此视图控制器?是否尝试将委托和数据源设置为.xib级别而不是viewDidLoad?@DreamingBinary是的,这很奇怪,因为在objective-c中执行此操作时,我的过程从未更改:我将对象拖动到xib(tablview/webview)并将该对象连接到文件的所有者。在我将该出口连接到文件所有者之后,我应该期望该出口已经初始化。我这样想是不是错了?