提问人:Yasic 提问时间:11/14/2023 更新时间:11/14/2023 访问量:48
打开“Color Offscreen-Render Yellow”时,绿色表示什么
What does green indicate when "Color Offscreen-Rendered Yellow" is turned on
问:
我正在测试由实现圆角的不同方式引起的屏幕外渲染问题。我尝试使用 cornerRadius 和蒙版图层作为实现圆角的两种方法,并且在 Xcode 中启用了“Color Offscreen-Render Yellow”选项。
class MyViewController: UIViewController {
lazy var view1: UIView = {
let v = UIView()
v.layer.cornerRadius = 30
v.layer.masksToBounds = true
let red = UIView()
red.backgroundColor = .red
v.addSubview(red)
red.snp.makeConstraints { make in
make.center.equalToSuperview()
make.size.equalToSuperview()
}
return v
}()
lazy var view2: UIView = {
let v = UIView()
let maskLayer = CAShapeLayer()
maskLayer.path = UIBezierPath(arcCenter: CGPoint(x: 30, y: 30),
radius: 30,
startAngle: 0,
endAngle: 2 * Double.pi,
clockwise: true).cgPath
maskLayer.fillColor = UIColor.white.cgColor
v.layer.mask = maskLayer
v.layer.masksToBounds = true
let red = UIView()
red.backgroundColor = .red
v.addSubview(red)
red.snp.makeConstraints { make in
make.center.equalToSuperview()
make.size.equalToSuperview()
}
return v
}()
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
view.addSubview(view1)
view.addSubview(view2)
view1.snp.makeConstraints { make in
make.leading.equalToSuperview().offset(30)
make.centerY.equalToSuperview()
make.size.equalTo(CGSize(width: 60, height: 60))
}
view2.snp.makeConstraints { make in
make.trailing.equalToSuperview().inset(30)
make.centerY.equalToSuperview()
make.size.equalTo(CGSize(width: 60, height: 60))
}
}
}
我发现使用 cornerRadius 设置圆角的视图以绿色突出显示。
我不明白这代表什么,以及为什么屏幕外渲染标志不是通常的黄色。
答: 暂无答案
评论