视图(矩形)下有两个视图(Toggle和Button):
struct ContentView: View {
@State var val = false
var body: some View {
ZStack {
VStack {
Text("Control penetration")
.font(.title)
Toggle(isOn: $val){EmptyView()}
Button(action: {
print("Yes! Clicked!")
}){
Text("Can you click me???")
}
}
.padding()
Rectangle()
.fill(Color.green.opacity(0.2))
.allowsHitTesting(false)
}
}
}我使用allowsHitTesting()让点击穿透到底部。
但是只有Button可以响应点击,Toggle不能!
它有什么问题?我怎样才能让Toggle也响应点击?非常感谢!
发布于 2020-09-05 11:52:48
以下是可能的解决方法--给它显式的点击手势处理程序。使用Xcode12/ iOS 14进行测试

Toggle(isOn: $val){EmptyView()}
.onTapGesture {
withAnimation { val.toggle() }
}https://stackoverflow.com/questions/63749022
复制相似问题