更改在OS X中使用popover segue创建的弹出窗口的外观

时间:2014-10-30 15:57:39

标签: macos cocoa swift storyboard osx-yosemite

我试图使用故事板为Yosemite构建一个简单的应用程序。创建一个popover segue很简单 - 在我的故事板中点击一个按钮创建segue到NSViewController,并将Style设置为Popover。这很好用,但麻烦的是,我想改变这个popover的外观。它看起来像是一个充满活力的黑暗外观的默认,但我喜欢它是充满活力的光或Aqua。我假设这里发生的事情是在幕后,正在创建NSPopover以包含我用segue显示的视图控制器,但我无法弄清楚如何访问此{ {1}}对象 - 故事板只允许我访问我正在显示的视图控制器,并且没有任何NSPopover对象可用于界面构建器。

我想要做的就是改变我在故事板中创建的这个popover的外观......有什么建议吗?谢谢!

1 个答案:

答案 0 :(得分:10)

在视图控制器中覆盖viewWillAppear并更新视图窗口的外观:

override func viewWillAppear() {
    self.view.window?.appearance = NSAppearance(named: NSAppearanceNameVibrantDark)
}

您的外表可以是standard appearances

中的任何一个