在SwiftUI中检测点击手势的位置可以通过使用GestureDetector
来实现。GestureDetector
可以捕获各种手势事件,包括点击(tap)手势。以下是如何在SwiftUI中实现这一功能的步骤:
以下是一个简单的示例,展示如何在SwiftUI中检测点击手势的位置:
import SwiftUI
struct ContentView: View {
@State private var tapLocation: CGPoint?
var body: some View {
GeometryReader { geometry in
VStack {
Text("Tap anywhere")
.font(.largeTitle)
.foregroundColor(.blue)
.background(Color.white)
.cornerRadius(20)
.gesture(
TapGesture()
.onChanged { value in
tapLocation = value.location
}
.onEnded { _ in
tapLocation = nil
}
)
if let location = tapLocation {
Text("Tapped at: \(Int(location.x)), \(Int(location.y))")
.foregroundColor(.red)
.padding()
}
}
.frame(width: geometry.size.width, height: geometry.size.height)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
tapLocation
中。tapLocation
。通过这种方式,你可以在SwiftUI中轻松检测点击手势的位置,并根据需要执行相应的操作。
领取专属 10元无门槛券
手把手带您无忧上云