2016-03-08 53 views
0

我有一個簡單的TableView,帶有文本和從CloudKit中抽取的圖像。我試圖在選擇時將這些數據傳遞給detailViewController,我可以獲取文本,但是我堅持發送圖像,儘管prepareForSegue。通過segue傳遞一個CKAsset圖像給ViewController?

我有一個TableViewController和DetailViewController。

TableViewController具有來自CK的圖像和文本的單元格。

DetailViewController有UIImageView和標籤被填充。

這裏是代碼..

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
    if segue.identifier == "showDetailView" { 
     if let indexPath = tableView.indexPathForSelectedRow { 
      let destinationController = segue.destinationViewController as! DetailViewController 

      let result = results[indexPath.row] 
      let image = result.objectForKey("Image1") as! CKAssset 
      destinationController.imageViewMain.image = UIImage(data: NSData(contentsOfURL: image.fileURL)!) 

     } 
    } 
} 

這不只是不工作,我真的開始與 EXC_BAD_INSTRUCTION崩潰時,我選擇一個錶行。該tableView工作正常,並從數據庫中獲取數據/圖像,似乎無法讓它通過segue傳遞。

任何幫助或指向正確的方向將不勝感激。

謝謝

回答

0

經過一番工作,我設法弄清楚了這一點。

對於任何其他人可能是想同樣的事情...

基本上我試圖創建prepareForSegue函數內部的UIImage的和而有可能,我無法得到它的工作。

我的解決方案是隻傳遞CKAsset通過segue,然後在DetailViewController中,我能夠使用CKAsset通過從CKAsset傳遞fileURL來創建UIImage。

我還在學習,所以我這樣做的方式可能完全錯誤。

相關問題