如何检测 SwiftUI 中的点击位置?

Posted

技术标签:

【中文标题】如何检测 SwiftUI 中的点击位置?【英文标题】:How to detect tap location in SwiftUI? 【发布时间】:2021-05-01 12:34:05 【问题描述】:

我想打印 块中点击点的位置(x,y 坐标)以及我的视图尺寸。

struct ContentView: View 
    var body: some View 
        self.onTapGesture 
            <#code#>
        
    

【问题讨论】:

【参考方案1】:

DragGestureminimumDistance: 0 添加到您的身体中,例如:

var body: some View 
        VStack
        
            
        
        .frame(
            minWidth: 0,
            maxWidth: .infinity,
            minHeight: 0,
            maxHeight: .infinity,
            alignment: .topLeading
        )
        .background(Color.red)
        .gesture(DragGesture(minimumDistance: 0).onEnded( (value) in
            print(value.location)
        ))
    

【讨论】:

谢谢,它会打印点击位置。如何打印框架的宽度和高度。 UIScreen.main.bound.size.widthUIScreen.main.bound.size.height 将返回屏幕尺寸的宽度和高度

以上是关于如何检测 SwiftUI 中的点击位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何在swiftUI中添加返回用户位置按钮?

点击按钮时SwiftUI获取用户的位置

如何检测 SwiftUI 中的 @Published 值发生了啥变化?

如何检测何时点击 TextField? (MacOS 上的 SwiftUI)

SwiftUI:如何检测两个视图是不是相互交叉?

如何确定在 SwiftUI 中的多词文本视图中点击的词