我有一个有些透明的视图(alpha = 0.6),其中包含一些子视图。我希望其中一个子视图(一个UILabel)的alpha值为1.0,因为混合会使文本难以阅读,但将其添加为主视图的子视图后,它采用了其父视图的alpha值。是否有一种方法可以覆盖这种行为?我认为我需要将其从子视图中删除,但想问一下是否可能我漏掉了什么。
我有一个有些透明的视图(alpha = 0.6),其中包含一些子视图。我希望其中一个子视图(一个UILabel)的alpha值为1.0,因为混合会使文本难以阅读,但将其添加为主视图的子视图后,它采用了其父视图的alpha值。是否有一种方法可以覆盖这种行为?我认为我需要将其从子视图中删除,但想问一下是否可能我漏掉了什么。
Brian是正确的。 例如:
view.backgroundColor = [UIColor colorWithWhite:0 alpha:0.6];
设置 alpha 值为 0.6 的黑色背景,并且不会影响其他视图。
另一种容易实现的方法是不修改UIView上的alpha通道,而是修改UIView背景色对象上的alpha图层。
当然,这取决于你为什么让alpha图层透明,但对于我的要求,它效果很好。