簡體   English   中英

如何使用Swift在iOS中使用透明設置背景圖片?

[英]How do I set a background image in iOS with transparency using Swift?

我可以使用以下代碼設置帶圖案的背景

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

它可以正常工作,但是圖像是具有透明性的png,我認為因此透明區域將變成黑色,有沒有辦法啟用透明性以使背景色顯示出來?

您看到黑色的背景,因為您要修改的視圖后面沒有視圖。

如果您不能更改圖像(使其不透明),則可以向包含該圖像的視圖添加子視圖:

//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來更改此view.backgroundColor

注意:如果添加其他UI元素,則它們可能會隱藏在otherView下,因為它們是作為view子視圖添加的。 為避免這種情況,您可以將它們添加為otherView子視圖或對圖層重新排序。 view.bringSubviewToFront(anotherUIElement)


我即時編寫了所有代碼,因此可能存在一些語法錯誤。 但是此代碼背后的一般想法應該起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM