SwiftUI中的.contextMenu

在SwiftUI中,contextMenu是一种用于在视图上下文中显示操作菜单的修饰符。它可以通过长按或在鼠标右键点击视图时触发。

使用contextMenu修饰符,可以将一个或多个操作菜单项添加到视图中。每个菜单项都可以包含一个标题和一个处理程序,当用户选择该菜单项时将调用该处理程序。

以下是一个使用contextMenu修饰符的示例:

swift 复制代码
struct ContentView: View {
    var body: some View {
        Text("Hello World")
            .contextMenu {
                Button(action: {
                    // perform action
                }) {
                    Text("Option 1")
                    Image(systemName: "circle.fill")
                }
                
                Button(action: {
                    // perform action
                }) {
                    Text("Option 2")
                    Image(systemName: "square.fill")
                }
            }
    }
}

在上面的示例中,text视图被修饰为具有上下文菜单。菜单中包含两个按钮,分别具有"Option 1"和"Option 2"的标题。当用户选择其中一个菜单项时,与之关联的处理程序将被调用。

除了按钮,您还可以在上下文菜单中使用其他视图,例如图像、文本字段等。

注意:contextMenu修饰符在iOS 13及更高版本和macOS 10.15及更高版本上可用。

相关推荐
文件夹__iOS2 天前
Swift 5.9 被严重低估的特性:参数包,一次性干掉重复泛型重载
ios·swiftui·swift
东坡肘子4 天前
让 AI 从称手到称心 -- 肘子的 Swift 周报 #134
人工智能·swiftui·swift
东坡肘子12 天前
Swift 并发正被更广泛地接纳 -- 肘子的 Swift 周报 #133
人工智能·swiftui·swift
文件夹__iOS14 天前
SwiftUI 核心选型:class + ObservableObject VS struct + @State
ios·swiftui·swift
Wenzar_16 天前
# 发散创新:SwiftUI 中状态管理的深度实践与重构艺术 在 SwiftUI 的世界里,**状态驱动 UI 是核心哲学**。但随
java·python·ui·重构·swiftui
大熊猫侯佩17 天前
GeometryReader 生存指南(下集):与恶魔共舞——陷阱、禁忌与最终救赎
swiftui·performance·layout·frame·stack·geometryreader·preferencekey
大熊猫侯佩17 天前
别被系统绑架:SwiftUI List 替换背后的底层逻辑
swiftui·swift·apple
东坡肘子19 天前
从 OpenSwiftUI 到 DanceUI:换个方式 Dive SwiftUI -- 肘子的 Swift 周报 #132
人工智能·swiftui·swift
用户794572239541320 天前
【SwiftyJSON】拯救你的 as? [String: Any]——链式 JSON 访问的正确姿势
swiftui·objective-c·swift