在SwiftUI中单击时,如何使圆的周长变为黑色?

在SwiftUI中单击时,如何使圆的周长变为黑色?,swift,geometry,swiftui,Swift,Geometry,Swiftui,单击图像时,我希望将周围区域设置为黑色。我在迅捷如何做到这一点 您可以使用.overlay和.stroke修饰符来实现这一点 检查下面的代码,希望它能帮助您 struct CircleOutLineView: View { var body: some View { ScrollView(.horizontal, showsIndicators: false) { HStack { CircleView(fillCo

单击图像时,我希望将周围区域设置为黑色。我在迅捷如何做到这一点


您可以使用
.overlay
.stroke
修饰符来实现这一点

检查下面的代码,希望它能帮助您

struct CircleOutLineView: View {
    var body: some View {
        ScrollView(.horizontal, showsIndicators: false) {
            HStack {
                CircleView(fillColor: .blue, outlineColor: .black)
                CircleView(fillColor: .red, outlineColor: .black)
                CircleView(fillColor: .yellow, outlineColor: .black)
                CircleView(fillColor: .green, outlineColor: .black)
                CircleView(fillColor: .purple, outlineColor: .black)
            }
            .padding()
            .frame(height: 100)
        }
    }
}

struct CircleOutLineView_Previews: PreviewProvider {
    static var previews: some View {
        CircleOutLineView()
    }
}

struct CircleView: View {
    
    @State private var isTapped = false
    
    var fillColor: Color
    var outlineColor: Color
    
    var body: some View {
        Circle()
            .fill(fillColor)
            .frame(width: 80, height: 80)
            .overlay(Circle().stroke(outlineColor, lineWidth: isTapped ? 1 : 0))
            .onTapGesture {
                self.isTapped.toggle()
            }
    }
}

你是怎么尝试的?叠加法解决了我的问题,谢谢。