Как сделать UIView не видимым, когда родительское представление имеет альфа-значение 0,5 - SWIFT - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь получить подпредставление, чтобы не видеть его, когда его родительское представление имеет альфа-значение 0,5. Мой код ниже:

 // Background
 let popUpBackground = UIView.init(frame: self.view.frame)
 popUpBackground.backgroundColor = UIColor.lightGray
 popUpBackground.alpha = 0.5        

 // Popup
 var popUp = UIView.init(frame: CGRect.init(x: 0, y: 0, width: 100, height: 100))
 popUp.backgroundColor = UIColor.blue
 popUp.alpha = 1.0 // This view appears to inherit the parents alpha value

 // Add popUp as subview to popUpBackground
 popUpBackground.addSubview(popUp)
 self.navigationController?.view.addSubview(popUpBackground)

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Не устанавливайте альфа parentView, скорее установите альфа на цвет фона parentView.

Итак, скорее:

let popUpBackground = UIView.init(frame: self.view.frame)
popUpBackground.backgroundColor = UIColor.lightGray
popUpBackground.alpha = 0.5

Использование:

let popUpBackground = UIView.init(frame: self.view.frame)
popUpBackground.backgroundColor = UIColor.lightGray.withAlphaComponent(0.5)
0 голосов
/ 04 мая 2018

Вы можете просто изменить background color alpha

с UIColor.white.withAlphaComponent(alphaValue)

обновите popUpBackground код до

 let popUpBackground = UIView.init(frame: self.view.frame)
    popUpBackground.backgroundColor = UIColor.white.withAlphaComponent(0.3)
   // popUpBackground.alpha = 0.1
   self.view.addSubview(popUpBackground)
...