iOS6/iOS 7 UIView 透明度

Posted

技术标签:

【中文标题】iOS6/iOS 7 UIView 透明度【英文标题】:iOS6/iOS 7 UIView transparency 【发布时间】:2013-11-07 15:27:12 【问题描述】:

所以我有一个游戏应用程序,它有答案屏幕。答案屏幕有 0.9 alpha,答案按钮有 1.0f。你可以在截图上看到。

ios 7 上也是如此

按钮 alpha 仍为 1.0,但看起来是透明的。如果我做背景视图 alpha 1.0 它适用于 iOS 7,但我非常需要用户查看视图下的背景。

请帮忙。

【问题讨论】:

【参考方案1】:

对于半透明的视图,以这种方式设置 alpha:

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

不是:

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

【讨论】:

最酷!有用!你能解释一下有什么区别以及为什么这在 iOS6 中有效,但在 iOS7 中无效? 不同的是你没有为整个视图设置alpha,你只是为背景颜色设置了alpha。实际上设置 view.alpha 在 iOS 6 中也应该有相同的结果,因为按钮是父视图中的子视图。不知道为什么它在 iOS 6 中有效,但它不应该。 @NikosM.:嗨...它对我不起作用。我在主视图中有一个视图。如果我将主视图的 alpha 设置为 0.95,那么它里面的视图也会变得半透明。如何解决这个问题?请帮忙。

以上是关于iOS6/iOS 7 UIView 透明度的主要内容,如果未能解决你的问题,请参考以下文章

带有不透明动画的 CAMediaTimingFunction

Swift UIView 背景颜色不透明度

透明度问题 - 将 UIView 转换为 UIImage 时

如何在 UIView 上应用不透明度渐变?

重叠的透明 UIView

UIView 和子视图 - 不透明度