在滚动开始之前,一切看起来都很棒,屏幕上显示了圆角。当用户开始滚动页面时,问题就出现了,顶角被内容的背景颜色(尖角)替换......有没有办法让我的内容始终显示为圆角,即使用户垂直滚动?
var body : some View{
GeometryReader { geometry in
ZStack{
Color(.red).cornerRadius(20).padding(.horizontal, 15).frame(height: geometry.frame.height).clipped()
ScrollView(.vertical, showsIndicators: true) {
ZStack{
Color(.blue).resizable().cornerRadius(20).padding(.horizontal, 15)
.frame(height: geometry.frame.height).clipped()
//some contents
}
VStack{
Color(.green).resizable().cornerRadius(20).padding(.horizontal, 15)
.frame(height: geometry.frame.height).clipped()
HStack{
//some other content
}
}
}.frame(height: geometry.frame.height)
}.mask(Rectangle().cornerRadius(15).frame(height: geometry.frame.height))
//.frame(height: geometry.frame.height)
//.clipShape(RoundedRectangle(cornerRadius: 15))
}
}
我试过面具/剪辑形状,但似乎没有用。