2016-07-25 50 views
0

代碼目前看起來是這樣的:問題與設置圖像的UILabel迅速 - 發現零而展開可選

lazy var placeLabel: UILabel = { 
     let label = UILabel() 
     label.backgroundColor = UIColor(patternImage: UIImage(named: "placelabel")!) 
     label.translatesAutoresizingMaskIntoConstraints = false 

     return label 
    }() 

我不知道爲什麼,但是當我輸入label.backgroundColor()的程序不能運行,在那條線上休息。

「致命錯誤:意外發現零而展開的可選值」

當我刪除它,然後繼續我的設置似乎運行正常。我已經看到過類似這樣的問題上的其他評論說,該命令被稱爲時沒有設置視圖,但我幾乎做我的按鈕完全相同的東西,什麼都沒有,它都工作正常。

任何想法爲什麼會發生這種情況?

感謝

回答

1

在這一行,UIColor(patternImage: UIImage(named: "placelabel")!),您強制使用!的UIImage對象的解纏。如果項目中不存在名爲「placelabel」的圖像,則應用程序將崩潰,因爲您試圖拆開nil。

+0

是的,我明白了。但是我的項目中存在地標。我試圖使用項目中存在的其他圖像,並且他們工作。有沒有什麼理由不這樣做? – tryingtolearn

0

請確保您使用的是正確的資產名稱和拼寫,並且該文件實際存在於磁盤所在的位置。

相關問題