我目前有一個UITableView,它包含一系列事件。每個事件都有一個按鈕,用戶可以按下該按鈕訪問與事件相關的照片的更大視圖。我有UIButton連接和設置,但我很難在新窗口中設置圖像。這裏是我的功能:UIImageView的設置圖像
func largeMap(sender: UIButton!) {
let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String
let manager = NSFileManager.defaultManager()
self.performSegueWithIdentifier("largeMapView", sender: self)
println(sender.tag.description)
println(documentsPath+"/Flight"+(sender.tag.description)+"/Map.png")
if let image = UIImage(data: manager.contentsAtPath(documentsPath+"/Flight"+(sender.tag.description)+"/Map.png")!) {
largeMapView.image = image
}
}
當我運行的應用程序,它崩潰的largeMapView.image =圖像,並給了我「致命錯誤:意外發現零而展開的可選值」。我已經檢查過,圖像的路徑是正確的,它正在訪問圖像,但它無法將其設置爲UIImageView。我有UIImageView出口設置在類的頂部。這是爲什麼發生?我以前用這種方式設置了UIImageView,但它現在不起作用。
我按照您的建議實施安全解包。在運行應用程序時,它安全地解開圖像,但仍然到達最後並在'largeMapView.image = image'上崩潰,並且說它意外地發現零,同時展開可選項,這導致我質疑我製作的插座。 – user3185748 2015-01-10 00:09:00
正確。這就是爲什麼_I_質疑出路。我相信你的崩潰純粹是診斷性的;你的_real_問題是你的出口沒有被設置。但那將是一個不同的問題!我相信我已經回答了你實際提出的問題,也就是爲什麼你首先會崩潰。 – matt 2015-01-10 00:18:03
我很感激幫助,但我必須繼續努力才能解決問題。如果你有任何想法,如果很高興聽到他們! – user3185748 2015-01-10 00:22:02