2016-09-22 99 views
0

我可以使用下面的代碼如何使用Swift在iOS中設置背景圖片?

view.backgroundColor = UIColor(patternImage: UIImage(named: "imagefilename")!) 

它工作正常,設置一個背景圖案,但圖像是用透明PNG格式,我想因爲這個透明區域的來了我們黑色,有一種啓用透明度的方式,以便背景顏色可以通過?

+0

你確定,你正在修改的背後有另一種觀點嗎? – FelixSFD

+0

這是一個很好的觀點,所以這會創建一個新視圖並設置背景圖片的情況。 – FullerPrime

+0

是的。那麼你甚至可以設置圖像的透明部分的顏色 – FelixSFD

回答

1

您會看到黑色背景,因爲您正在修改的視圖背後沒有視圖。

如果你不能改變你的形象(以使其不透明),你可以一個子視圖添加到包含此圖片的觀點:

//create a new UIView 
let otherView = UIView(frame: view.frame) 
otherView.backgroundColor = UIColor(patternImage: UIImage(named: "imagefilename")!) 

//now add your new view as subview to the existing one 
view.addSubview(otherView) 

的透明部分,現在應該是默認的白色。您可以通過修改view.backgroundColor來更改此設置。

注:如果添加其他UI元素,他們可能會被otherView下,因爲它們被添加作爲view子視圖隱藏。爲了防止這種情況,您可以將它們添加爲otherView的子視圖或重新排序圖層。 (view.bringSubviewToFront(anotherUIElement)


我寫在飛行的所有代碼,所以可能有一些語法錯誤。但是這個代碼背後的一般理念應該能夠工作。

+0

謝謝。 – FullerPrime