iOS6/iOS 7 UIView透明度

6
所以我有一个游戏应用程序,它有一个答案屏幕。答案屏幕的alpha值为0.9,答案按钮的alpha值为1.0f,您可以在截图上看到。
iOS 7上也是一样的。
按钮的alpha值仍然为1.0,但它看起来透明。如果我将背景视图的alpha值设置为1.0,则在iOS 7上可以正常工作,但我非常需要用户在视图下方看到背景。
请帮忙。
1个回答

17

对于半透明的视图,请使用以下方式设置 alpha 值:

UIView *view.backgroundColor=[[UIColor whiteColor] colorWithAlphaComponent:.6];

不是:

UIView *view.backgroundColor=[UIColor whiteColor];    
view.alpha=.6;

太棒了!它可用!你能否解释一下为什么在iOS6中能运行但在iOS7中不能运行的区别和原因? - Vsevolod Kukhelny
1
区别在于您不会为整个视图设置alpha,而是仅为背景颜色设置alpha。实际上,在iOS 6中设置view.alpha也应该具有相同的结果,因为按钮是父视图中的子视图。不知道为什么它在iOS 6中可以工作,但不应该这样。 - Nikos M.
@NikosM.: 嗨...对我没用。 我在主视图中有一个子视图。 如果我将主视图的透明度设置为0.95,则其中的子视图也会变得半透明。 如何解决这个问题? 请帮助。 - Manthan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接