我在drawRect中遇到透明度问题。我有一个自定义的UIView。如果我绘制一个rect bezier路径并用灰色填充它,即使我将alpha设置为0.6,颜色仍然是实心的而没有任何透明度。 :
导入UIKit
class MyView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override func drawRect(rect: CGRect) {
let grayOverlay = UIBezierPath(rect: rect)
UIColor(red: 34, green: 211, blue: 121, alpha: 0.6).set()
grayOverlay.fill()
}
}
我在这里错过了什么吗?
答案 0 :(得分:2)
视图有-opaque
属性。
由于性能原因,默认设置为true
。如果视图不是不透明的,则需要透明混合,这是更加密集的。
设置为false
即表示您同意在视图与其显示内容之间保持透明。