将一个视图放在另一个视图上时,可以使用 blendMode()
修饰符控制它们的重叠方式。 这包含多种将颜色混合在一起的方法,例如使用它们的差异或使用颜色加深-如果您以前使用过 Core Graphics
或类似 Photoshop
的工具,那么这些方法将会很熟悉。
为了演示这一点,我们可以创建一个内部有两个重叠圆的 ZStack
,其中第二个圆具有 .multiply
混合模式,以使其背后的颜色变暗:
ZStack {
Circle()
.fill(Color.red)
.frame(width: 200, height: 200)
.offset(x: -50)
.blendMode(.screen)
Circle()
.fill(Color.blue)
.frame(width: 200, height: 200)
.offset(x: 50)
.blendMode(.screen)
}
.frame(width: 400)