你可以在其子视图之一上覆盖父UIView的alpha值吗?

Mel*_*emi 6 cocoa-touch alphablending uiview

我有一个透明的视图(alpha = 0.6)有一些子视图.我想要使​​用1.0的alpha绘制其中一个子视图(UILabel),因为混合使文本难以阅读,但通过将其添加为主视图的子视图,它已采用其父级的alpha值.有没有办法覆盖这种行为?我相信我必须从子视图中删除它,但想问一下,看看我是否遗漏了一些东西.

Pie*_*ade 14

布莱恩是对的.例如 :

view.backgroundColor = [UIColor colorWithWhite:0 alpha:0.6];
Run Code Online (Sandbox Code Playgroud)

将在alpha 0.6中制作黑色背景,其他视图不会受到影响.


Bri*_*ing 10

另一种易于使用的方法是不修改UIView上的alpha通道.而是修改UIView的backgroundColor对象上的alpha图层.

当然,这取决于你为什么使alpha图层透明,但它适合我的要求.


Dan*_*iel 2

你是对的。您必须将 UILabel 移出透明视图才能使其呈现为不透明。