Xcode&Swift – 没有标题栏的窗口,但closures,最小化和调整button大小
我目前在Xcode 6 Beta 5中使用Swift。我试图删除标题栏,或标题栏和实际内容之间的任何可见区别。 如果我在窗口的“属性检查器”中启用“统一标题和工具栏”,则不会出现任何明显的情况。 我已经把标题留下了。
当没有标题input时,标题栏仍然可以区分,因为边界线和背景与窗口的其他部分不同,将其与实际内容分开。
现在的优胜美地,OS X 10.10,Notes应用程序就是一个很好的例子。 没有标题栏是可见或可区分的,只是closures,最小化和resizebutton,如在这里看到的。
我已经搜查了一下,看了其他的post,但是没有得到什么好处。
那些提到完全隐藏标题栏,但我不知道如何手动重新添加closures,最小化和resizebutton正确 ,这意味着他们看起来是正确的,没有实际的,偷偷摸摸的图像replace和连接与菜单栏closures,最小化和调整function。
在OS X 10.10中添加的新窗口风格的面具NSFullSizeContentViewWindowMask
将做的伎俩。
self.window.titleVisibility = NSWindowTitleVisibility.Hidden; self.window.titlebarAppearsTransparent = YES; self.window.styleMask |= NSFullSizeContentViewWindowMask;
发行说明
对于10.10+,你可以使用这些:
window.titlebarAppearsTransparent = true window.movableByWindowBackground = true
在优胜美地有一个官方的橱窗外观样板项目。 你可能想检查一下。
对于Swift 3: –
self.window.titleVisibility = .hidden self.window.titlebarAppearsTransparent = true self.window.styleMask.insert(.fullSizeContentView)
你可以使用这些:
override func viewDidAppear() { super.viewDidAppear() self.view.window?.titlebarAppearsTransparent = true self.view.window?.movableByWindowBackground = true }
我没有足够的名气来评论Ranfei Songs的回答,但是在OSX 10.12上运行titleVisibility的语法略有不同,而不是这样:
self.window.titleVisibility = NSWindowTitleVisibility.Hidden;
你需要使用NSWindowTitleHidden,所以更新Ranfei的代码会导致你需要像这样指定它:
self.window.titleVisibility = NSWindowTitleHidden; self.window.titlebarAppearsTransparent = YES; self.window.styleMask |= NSFullSizeContentViewWindowMask;
更新于2017年9月10日,
override func viewDidAppear() { super.viewDidAppear() self.view.window?.titleVisibility = .hidden self.view.window?.titlebarAppearsTransparent = true self.view.window?.styleMask.insert(.fullSizeContentView) }