SwiftUI 上下文菜单位置

问题描述 投票:0回答:0

我有一个 SwiftUI macOS 应用程序,其视图包含使用 Path 绘制的垂直线。我需要右键单击一行并打开一个 ContextMenu 但我需要知道单击的位置以便识别被单击的行。

我已经尝试过普通的 ContextMenu(它有效)但我看不到任何方法来获取它的来源。

.contextMenu {
  Button("Do it") { /* do something at button's origin */ }
}

我试过 SpatialTapGesture,它提供了一个位置,但我不知道如何打开上下文菜单(它也没有真正进行右键单击,只能按 ctrl-左键单击)。

SpatialTapGesture()
  .modifiers(.control)
  .onEnded { event in
    print("ctrl-click: location = \(event.location)")
  }

建议?

swiftui contextmenu
© www.soinside.com 2019 - 2024. All rights reserved.