swift 3 tableview.reloadData 使应用程序崩溃

swift 3 tableview.reloadData crashes the app

我有一个 table 视图,它从核心数据中获取数据。 这工作正常,但如果我发送命令 tbl.reloadData 它会破坏我的应用程序。

这是我获取数据并重新加载的代码:

@IBOutlet weak var tbl: NSTableView!
  func requestData() {

        let appdelegate = NSApplication.shared().delegate as! AppDelegate
        let context = appdelegate.persistentContainer.viewContext
        let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Test")

        do {
            data = try context.fetch(request) as! [Data]

        } catch { }

        print(data)

        tbl.reloadData()

    }

print(data) 成功显示了我所有的核心数据。 但在 "tbl.reloadData()" 行,应用程序将因以下错误而崩溃:

    fatal error: unexpectedly found nil while unwrapping an Optional value
2017-05-03 14:24:47.750618+0200 Programm[36302:1990301] fatal error: unexpectedly found nil while unwrapping an Optional value

在打印语句之后唯一可以为 nil 的是 tbl 对象。确保:

  • 您已正确连接 IBOutlet。
  • 从情节提要中删除了旧连接。您之前创建的现在重命名变量名称或完全删除变量。

此外,出于某种原因,您的代码 NSTableView 确保您要查找的是它,而不是单列样式 UITableView