2015-10-06 72 views
-1

有一個應用程序,我鍵入用戶名,從imagePickerController中選擇一張圖片,所有的數據保存到核心數據,並檢索到tableview單元格,並工作正常,但如果我不選擇圖片應用程序崩潰與日誌「意外地發現零,同時展開一個可選值」,我忘了如何做到這一點,不記得我在哪個項目解決了。CoreData意外地發現零,而解包一個可選值

let imageData = NSData(data: UIImageJPEGRepresentation(photoImageView.image!, 1.0)!) 
newUser.setValue(imageData, forKey: "image") 

喜歡的東西,如果圖像數據!=零{ } ??

+1

*您有*閱讀本:斯威夫特選配(https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ TheBasics.html#// apple_ref/doc/uid/TP40014097-CH5-ID330)(Apple文檔)。 – Moritz

回答

2

嘗試if let image = photoImageView.image {//use the image}。這將以安全的方式打開可選項。

當你使用!運算符時要小心,你基本上保證這個東西永遠不會是零。使用if let語句或?運算符,除非絕對沒有辦法使所討論的變量爲零。

-2

解決這個

if photoImageView == nil { 
     let imageData = NSData(data: UIImageJPEGRepresentation(photoImageView.image!, 1.0)!) 
     newUser.setValue(imageData, forKey: "image") 
    } 
+0

爲什麼缺點,我只是在學習,你們都在那裏。 – Igy

+0

'if photoImageView == nil' then'photoImageView.image!'**將**崩潰,就像它已經做的那樣。如果你真的想學習,你應該閱讀你的問題的答案和鏈接。無論如何,你應該檢查你發佈的代碼是否真的有效。 – Moritz

+0

我的答案是「閱讀我在提問中提供的鏈接」,它包含了你的答案。 – Moritz

相關問題