非常简单的问题:我想改变UIView的不透明度,并将字体保持在alpha = 1.0之上。
因为你可以看到有两个标记,在它们下面是UIView。我设置了UIView的opcaity(例如:@IBOutlet weak var coView: UIView!
self.coView.alpha = 0.8
)。结果是UIView和标签都更透明,我想在alpha = 1.0上保留标签文本。是否可以不更改堆栈视图和约束?
答案 0 :(得分:3)
使用
coView.backgroundColor = UIColor.black.withAlphaComponent(0.8)
这是非常讨厌的,并不是你想要的,但它是一种解决方案。它使用alpha值设置coView的背景颜色,这有效地为您提供了所需的颜色。
答案 1 :(得分:1)
更改UIView的alpha会更改其所有子视图在新alpha集中的显示方式。没有办法真正避免这种情况,但你可以通过使用其他一些辅助视图解决这个问题。
例如,在UIView pm
内,您可以使用另一个名为backgroundView
的子视图,它位于背面,是您设置背景颜色的子视图。 UIView pm
中的所有其他元素都位于backgroundView
的顶部,背景颜色清晰。
如果您只想更改颜色的alpha,只需将alpha更改为backgroundView
,UIView pm
中的其他元素将保持相同的alpha
答案 2 :(得分:0)