0

有没有办法以contextMenu编程方式解雇?

我希望contextMenu在应用程序返回前台时自动关闭(在进入后台之前调用)。

ContentView

struct ContentView: View {
var body: some View {
    Text("Menu")
        .contextMenu {
            Button("Button", action: { print("button tapped") })
        }
        .onReceive(
            NotificationCenter.default.publisher(for: NSNotification.Name("dismissContextMenu"))
        ) { _ in
            print("dismiss context menu")
        }
}

通知发布在SceneDelegate

func sceneWillEnterForeground(_ scene: UIScene) {
    NotificationCenter.default.post(
        name: NSNotification.Name("dismissContextMenu"),
        object: nil
    )
}

我尝试添加一个.id(viewId)令人耳目一新的 viewId,但它不起作用。

谢谢

4

0 回答 0