Swiftui HStack:ontap手势仅对元素有效

Swiftui HStack:ontap手势仅对元素有效,swiftui,Swiftui,我举了一个例子: struct ContentView: View { var body: some View { HStack { Text("part1") Spacer() Text("part2") Spacer() Text("part3") }

我举了一个例子:

struct ContentView: View {
    
    var body: some View {
        HStack {

            Text("part1")

            Spacer()

            Text("part2")

            Spacer()

            Text("part3")

        }
        .onTapGesture {
            print("tapped")
        }
    }
    
}
问题是,
.ontapsignate
仅在我点击
文本时才会被调用,但如果我点击元素之间的空格,则不会被调用


我试图将一个
矩形().fill(Color.clear)
作为
HStack
的背景,但它也不起作用(如果我把它放在例如
Color.blue
,它只起作用)。

它需要指定内容形状来覆盖所有区域,因为默认情况下只有不透明的东西才能处理手势

}
.contentShape(Rectangle())      // << here !!
.onTapGesture {
    print("tapped")
}
}

.contentShape(矩形())//谢谢!刚刚发现
.background(Rectangle().fill(Color(UIColor.systemBackground))
也可以;)极好的解决方案!