小编Rom*_*nks的帖子

如何在 SwiftUI 生命周期中显示 NSPopover?

我试图通过单击按钮来显示可拆卸的 NSPopover,但我被卡住了。我遵循了如何显示 NSPopover 但它们都围绕菜单栏应用程序。

我的 AppDelegate 看起来像这样

final class AppDelegate: NSObject, NSApplicationDelegate {
    var popover: NSPopover!
    
    func applicationDidFinishLaunching(_ notification: Notification) {
        let popover = NSPopover()
        let popoverView = PopoverView()
        
        popover.contentSize = NSSize(width: 300, height: 200)
        popover.contentViewController = NSHostingController(rootView: popoverView)
        popover.behavior = .transient
        
        self.popover = popover
    }
    
     func togglePopover(_ sender: AnyObject?) {
        self.popover.show(relativeTo: (sender?.bounds)!, of: sender as! NSView, preferredEdge: NSRectEdge.minY)
    }
}
Run Code Online (Sandbox Code Playgroud)

macos nspopover appdelegate swiftui

8
推荐指数
1
解决办法
1615
查看次数

如何防止 Picker 折叠到 SwiftUI macOS 中的子菜单中

我正在尝试将 Picker 和 macOS SwiftUI 应用程序中菜单内的一些按钮结合起来。不幸的是,选择器会自动折叠到子菜单中,我很难找到解决方案。如何防止 Picker 折叠,或者也许有更好的解决方案?

\n
Menu("Budgets") {\n    Picker("Budgets", selection: $account) {\n        Button("Personal") {}.tag(1)\n        Button("Business") {}.tag(2)\n    }.labelsHidden()\n                \n    Divider()\n                \n    Button("New Budget\xe2\x80\xa6") {}\n    Button("Manage Budgets\xe2\x80\xa6") {}\n}\n
Run Code Online (Sandbox Code Playgroud)\n

预览

\n

macos menu picker swiftui

5
推荐指数
1
解决办法
612
查看次数

标签 统计

macos ×2

swiftui ×2

appdelegate ×1

menu ×1

nspopover ×1

picker ×1