2015-04-26 51 views
1

我在viewDidLoad()中的代码抱怨没有!在下面的语句:Swift:将UIImage设置为背景

view.backgroundColor = UIColor.colorWithPatternImage(UIImage(named: "background.jpg")) 

然而,当我把它改成这样的建议:

view.backgroundColor = UIColor.colorWithPatternImage(UIImage(named: "background.jpg")!) 

它提供了以下错误:

fatal error: unexpectedly found nil while unwrapping an Optional value

同样,任何帮助将不胜不胜感激!

+1

'background.jpg'确实存在吗? – ABakerSmith

+0

它的确如此。我这次把它添加到图书馆。我想你可能看过我以前的帖子。 XD – HowbeitGirl

+0

并尝试不使用.jpg表达式。仍然没有工作。 – HowbeitGirl

回答

5

你的代码改成这样:

if let image = UIImage(named: "background.jpg") { 
    view.backgroundColor = UIColor.colorWithPatternImage(image) 
} else { 
    println("There was no such image as background.jpg") 
} 

这样,你会不会崩溃,而println将登录到控制台,并证明给你看,图像不存在 - 直到它,当然。

+2

必须+1这真的很难。这个答案不会突然使'UIImage(named:“background.jpg)'返回非零,但它确实消除了在这里,那里和各处摆脱编译的非常糟糕的模式,只是抛出'!无论出于何种原因,人们无法理解的错误。 – nhgrif