且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

按钮或图像上的SWIFT UI MacOS弹出窗口

更新时间:2022-05-07 23:01:08

以下是可能的方法演示。编写并使用Xcode 11.7/MacOS 10.15.6进行了测试

struct ContentView: View {
    @State var isPopover = false
    var body: some View {
        VStack {
            Button(action: { self.isPopover.toggle() }) {
                Image(nsImage: NSImage(named: NSImage.infoName) ?? NSImage())
            }.popover(isPresented: self.$isPopover, arrowEdge: .bottom) {
                     PopoverView()
            }.buttonStyle(PlainButtonStyle())
        }.frame(width: 800, height: 600)
    }
}

struct PopoverView: View {
    var body: some View {
        VStack {
            Text("Some text here ").padding()
            Button("Resume") {
            }
        }.padding()
    }
}