SwiftUI нажмите под прокруткой
Жест касания на зеленом не работает. У кого-нибудь есть решение для этого?
ZStack {
Color.green
.onTapGesture {
print("green")
}
ScrollView {
VStack {
Spacer(minLength: 500)
Color.red
.onTapGesture {
print("red")
}
.frame(height: 800)
}
}
}
1 ответ
Решение
То, что вы хотите, невозможно, потому что ScrollView находится над зеленым View, но есть такой способ:
struct ContentView: View {
func greenFunction() { print("green") }
var body: some View {
ZStack {
Color.green.onTapGesture { greenFunction() }
ScrollView {
VStack(spacing: 0) {
Color.white.opacity(0.01).frame(height: 500).onTapGesture { greenFunction() }
Color.red.frame(height: 800).onTapGesture { print("red") }
}
}
}
}
}