[英]alpha for background color not working in iOS
你知道為什么 alpha 參數在我的視圖中不起作用嗎?
self.view.backgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.4)
也請查看此視頻
謝謝
如果您使用情節提要並使用 segue 呈現視圖控制器,則顯示具有透明背景的視圖控制器的 segue 的呈現屬性應全屏顯示,如附件所示。
然后在您的視圖控制器中使用此設置背景顏色:
self.view.backgroundColor = UIColor(white: 0, alpha: 0.4)
這並不奇怪,它的行為完全符合它應有的要求。 UIColor的方法雖然很多都是類方法,但還是有一些實例方法,這就是其中之一。 來自 UIColor 文檔。
colorWithAlphaComponent:
創建並返回一個顏色對象,該對象具有與接收器相同的顏色空間和分量值,但具有指定的 alpha 分量。 所以, colorWithAlphaComponent: 只是改變其接收器的 alpha 值。 例子:
let black = UIColor.blackColor() // 1.0 alpha
self.view.backgroundColor = black.colorWithAlphaComponent(0.5) // 0.5 alpha
您正在呈現ViewController,因此它將無法工作,因為您必須在其他 ViewController 上添加UIViewController 的UIView ,然后才能工作。
[[self view] addSubview:myViewController.view];
我在 iOS 12 上發現了一個與標題(但不是答案)相關的問題,其中 withAlphaComponent 不起作用。
預期結果:視圖背景顏色是帶有一些 alpha 的命名顏色。 實際結果:視圖背景顏色是他命名的顏色,沒有 alpha。
如果情節提要中設置的顏色是命名顏色以外的任何顏色,則不會出現此問題。 它也不會發生在 iOS 14.1 上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.