添加 alpha 以查看 VS 添加 alpha 到 UIColor
Add alpha to view VS Add alpha to UIColor
正在写这个:
view.backgroundColor = UIColor.white.withAlphaComponent(0.9)
相当于:
view.backgroundColor = UIColor.white
view.alpha = 0.9
如果不是,有什么区别?
UIView 中的内容会受到更改 UIView 本身的 alpha 的影响。例如将它更改为 0.5 也会将 UIView 中的子视图更改(好吧,看起来像)到 alpha 0.5。
更改背景颜色不会有此行为:子视图不受影响。
两者不等价
情况 1. 只给 UIColor 不透明度(透明度)
情况 2. 将赋予整个 UIView 不透明度(透明度)
使用第二个所有文本和其他对象(子视图)也将应用透明度。
你可以通过下图了解更多
colorView.backgroundColor = UIColor.white.withAlphaComponent(0.5) //First view Code
viewMain.alpha = 0.5 // second view code
两个视图都有蓝色背景颜色和黑色文本
那么什么时候应该使用哪个:-
案例 1. 当您只需要 UIColor 的透明度或者您想要显示主视图后面的视图时,主要对象尽可能清晰。
情况 2. 当您想要以透明方式显示整个视图时使用。
简单说明
案例一:
viewMain.backgroundColor = UIColor.white.withAlphaComponent(0.9)
它将减少特定视图的 alpha 颜色,即此处 viewMain
。
案例二:
viewMain.alpha = 0.5
它会降低视图的不透明度,如果 viewMain 有多个视图,那么所有视图的 alpha 都会降低该数量。
示例:
假设你的视图层次结构是这样的
viewMain
-> view1
-> view2
现在从Case1开始,ViewMain
的alpha只会减少。但是在案例 2 中 viewMain, view1, view2
的 alpha 会减少。
如果你没有层次结构,那么两者都是一样的。
如果你有视图层级,那么效果如下
正在写这个:
view.backgroundColor = UIColor.white.withAlphaComponent(0.9)
相当于:
view.backgroundColor = UIColor.white
view.alpha = 0.9
如果不是,有什么区别?
UIView 中的内容会受到更改 UIView 本身的 alpha 的影响。例如将它更改为 0.5 也会将 UIView 中的子视图更改(好吧,看起来像)到 alpha 0.5。
更改背景颜色不会有此行为:子视图不受影响。
两者不等价
情况 1. 只给 UIColor 不透明度(透明度)
情况 2. 将赋予整个 UIView 不透明度(透明度)
使用第二个所有文本和其他对象(子视图)也将应用透明度。
你可以通过下图了解更多
colorView.backgroundColor = UIColor.white.withAlphaComponent(0.5) //First view Code
viewMain.alpha = 0.5 // second view code
两个视图都有蓝色背景颜色和黑色文本
那么什么时候应该使用哪个:-
案例 1. 当您只需要 UIColor 的透明度或者您想要显示主视图后面的视图时,主要对象尽可能清晰。
情况 2. 当您想要以透明方式显示整个视图时使用。
简单说明
案例一:
viewMain.backgroundColor = UIColor.white.withAlphaComponent(0.9)
它将减少特定视图的 alpha 颜色,即此处 viewMain
。
案例二:
viewMain.alpha = 0.5
它会降低视图的不透明度,如果 viewMain 有多个视图,那么所有视图的 alpha 都会降低该数量。
示例:
假设你的视图层次结构是这样的
viewMain
-> view1
-> view2
现在从Case1开始,ViewMain
的alpha只会减少。但是在案例 2 中 viewMain, view1, view2
的 alpha 会减少。
如果你没有层次结构,那么两者都是一样的。
如果你有视图层级,那么效果如下