2017-05-03 94 views
0

我有一個從核心數據獲取數據的表視圖。 這工作正常,但如果我發送命令tbl.reloadData它會崩潰我的應用程序。swift 3 tableview.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() 

    } 

打印(數據)顯示我成功我所有的核心數據的數據。 但就行了「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 
+0

tbl插座是否正確綁定到其在視圖中的界面生成器? –

+0

是的,它是正確的 – Stack108

+0

ALL OK!我現在不爲什麼,但我刪除了tableview和控制器的連接,並再次連接 - 現在它工作.... – Stack108

回答

1

,可以是零之後print語句是TBL對象嘛。請確保:

  • 您已正確連接IBOutlet。
  • 從故事板中刪除舊連接。之前創建的那些,現在將其重命名爲變量名稱或完全刪除變量。

也出於某種原因,您的代碼有NSTableView請確保您正在尋找,而不是一列式UITableView