現在、Xcode 6、Beta 5でSwiftを使用しています。タイトルバー、またはタイトルバーと実際のコンテンツの目に見える違いを削除しようとしています。ウィンドウの属性インスペクタのツールバー」で、何も表示されません。すでにタイトルは省略しています。
タイトルが入力されていない場合、タイトルバーはウィンドウの残りの部分との境界線と背景の違いにより、実際のコンテンツとは区別されるため、依然として区別可能です。
優れた例は、現在のYosemite、OS X 10.10、Notesアプリです。ここに見られるように、閉じる、最小化、サイズ変更ボタンだけで、タイトルバーは表示または識別できません。
私は他の投稿を検索しましたが、ほとんど役に立ちませんでした。
タイトルバーを完全に非表示にすることについて言及しましたが、[閉じる]、[最小化]、および[サイズ変更]ボタンを手動で再追加する方法がわかりません適切に。卑劣な画像の置換と、メニューバーの[閉じる]、[最小化]、[サイズ変更]機能との接続。
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
Yosemiteには、ウィンドウの外観に関する公式のサンプルプロジェクトがありました。あなたはそれをチェックアウトしたいかもしれません。
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
}
2017年9月更新、taget 10.11:
override func viewDidAppear() {
super.viewDidAppear()
self.view.window?.titleVisibility = .hidden
self.view.window?.titlebarAppearsTransparent = true
self.view.window?.styleMask.insert(.fullSizeContentView)
}
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;