2015-08-08 29 views
0

我的ViewController設置爲更新服務器上的JSON數據。這是完美的。但是,當我把我的VC進行SEGUE回到它與下面的語句崩潰另一賽格瑞:SwiftyJSON:調用segue但連接嘗試獲取數據

fatal error: unexpectedly found nil while unwrapping an Optional value

這發生在這一行:

let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as! NSArray 

對「UpdateVC」和發生錯誤segue指向「ListVC」。

+0

它正在發生,因爲你是包裝用'一個零值'一些你的json的價值是否你沒有正確地檢查你的數據 –

回答

2

該語句的結束部分是做強制解包:

as! NSArray 

因爲它拋出一個異常,這意味着要麼:

  • 返回值是nil
  • 回報值不能投到NSArray

我無法說出正確的處理方式,因爲它取決於您的應用程序邏輯。如果演員應該(理想情況下)總是成功,那麼你的應用中可能有一個bug。在另一方面,如果可能的話,中投沒有成功,那麼最好的辦法是保護與可選的結合:

if let jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as? NSArray { 
    // do something 
} 
相關問題