更改 UIView 的 alpha 会影响字体不透明度
Changing the alpha of UIView affects the font opacity
很简单的问题:我想更改 UIView 的不透明度并使用 alpha = 1.0 保持其上方的字体。
所以你可以看到有两个标签,在它们下面是 UIView。我已经设置了 UIView 的透明度(例如:@IBOutlet weak var coView: UIView!
self.coView.alpha = 0.8
)。结果是 UIView 和标签都更加透明,我想将标签的文本保持在 alpha = 1.0。是否可以在不更改堆栈视图和约束的情况下进行?
更改 UIView 的 alpha 会更改其所有子视图对新 alpha 集的显示方式。没有办法真正避免这种情况,但您可以通过使用其他一些辅助视图来解决这个问题。
例如,在您的 UIView pm
中,您可以有另一个名为 backgroundView
的子视图,它位于背面,并且是您设置背景颜色的子视图。 UIView pm
中的所有其他元素都将位于 backgroundView
之上,背景颜色清晰。
如果您只想更改颜色的 alpha,只需将 alpha 更改为 backgroundView
,UIView pm
中的其他元素将保持相同的 alpha
使用
coView.backgroundColor = UIColor.black.withAlphaComponent(0.8)
这非常烦人,而且不是您想要的,但这是一种解决方法。它使用 alpha 值设置 coView 的背景颜色,这有效地为您提供了您想要的内容。
您应该将 alpha 保留为 1 并选择自定义背景颜色(在属性检查器中),而不是更改对象的 Alpha:
然后在自定义颜色小部件中根据需要更改颜色的不透明度。
很简单的问题:我想更改 UIView 的不透明度并使用 alpha = 1.0 保持其上方的字体。
所以你可以看到有两个标签,在它们下面是 UIView。我已经设置了 UIView 的透明度(例如:@IBOutlet weak var coView: UIView!
self.coView.alpha = 0.8
)。结果是 UIView 和标签都更加透明,我想将标签的文本保持在 alpha = 1.0。是否可以在不更改堆栈视图和约束的情况下进行?
更改 UIView 的 alpha 会更改其所有子视图对新 alpha 集的显示方式。没有办法真正避免这种情况,但您可以通过使用其他一些辅助视图来解决这个问题。
例如,在您的 UIView pm
中,您可以有另一个名为 backgroundView
的子视图,它位于背面,并且是您设置背景颜色的子视图。 UIView pm
中的所有其他元素都将位于 backgroundView
之上,背景颜色清晰。
如果您只想更改颜色的 alpha,只需将 alpha 更改为 backgroundView
,UIView pm
中的其他元素将保持相同的 alpha
使用
coView.backgroundColor = UIColor.black.withAlphaComponent(0.8)
这非常烦人,而且不是您想要的,但这是一种解决方法。它使用 alpha 值设置 coView 的背景颜色,这有效地为您提供了您想要的内容。
您应该将 alpha 保留为 1 并选择自定义背景颜色(在属性检查器中),而不是更改对象的 Alpha:
然后在自定义颜色小部件中根据需要更改颜色的不透明度。