如何屏蔽视图区域
How to mask out a region of a view
我正在寻找有关使用 SwiftUI 实现以下目标的最佳方法的建议。
我有一个带有红色圆角矩形角的视图和一个子视图,它是一个偏移到父视图底部的矩形蓝色框。 1
但是,我想遮盖第二张附图中的阴影区域 2 以使其显示为白色(即删除蓝色阴影区域),但我不确定如何最好地完成此操作。
这是目前的代码:-
import SwiftUI
import Foundation
struct PupilCell : View {
var body : some View {
ZStack {
Rectangle().frame(height: 60.0, alignment: .bottom).foregroundColor(Color.blue).offset(x: 0.0, y: 50.0)
RoundedRectangle(cornerRadius: 25, style: .continuous).stroke(lineWidth: 2.0).fill(Color.red)
}
}
}
以下是可能的方法:
ZStack {
Rectangle().frame(height: 60.0, alignment: .bottom).foregroundColor(Color.blue).offset(x: 0.0, y: 50.0)
RoundedRectangle(cornerRadius: 25, style: .continuous).stroke(lineWidth: 2.0).fill(Color.red)
}.mask(RoundedRectangle(cornerRadius: 25, style: .continuous).fill(Color.black))
我正在寻找有关使用 SwiftUI 实现以下目标的最佳方法的建议。
我有一个带有红色圆角矩形角的视图和一个子视图,它是一个偏移到父视图底部的矩形蓝色框。 1
但是,我想遮盖第二张附图中的阴影区域 2 以使其显示为白色(即删除蓝色阴影区域),但我不确定如何最好地完成此操作。
这是目前的代码:-
import SwiftUI
import Foundation
struct PupilCell : View {
var body : some View {
ZStack {
Rectangle().frame(height: 60.0, alignment: .bottom).foregroundColor(Color.blue).offset(x: 0.0, y: 50.0)
RoundedRectangle(cornerRadius: 25, style: .continuous).stroke(lineWidth: 2.0).fill(Color.red)
}
}
}
以下是可能的方法:
ZStack {
Rectangle().frame(height: 60.0, alignment: .bottom).foregroundColor(Color.blue).offset(x: 0.0, y: 50.0)
RoundedRectangle(cornerRadius: 25, style: .continuous).stroke(lineWidth: 2.0).fill(Color.red)
}.mask(RoundedRectangle(cornerRadius: 25, style: .continuous).fill(Color.black))