ドキュメント

Mac CatalystでビルドしたMacアプリでのタイトルバーの削除

タイトルバーを削除して、ウインドウの高さ全体にコンテンツを表示します。

概要

Mac CatalystでビルドしたMacアプリでは、ウインドウの上部にタイトルバーがデフォルトで表示されます。1本の横線が、タイトルバーとウインドウのコンテンツを分けています。

メッセージや連絡先など一部のMacアプリでは、メインウインドウにタイトルバーがありません。ウインドウの上部には「閉じる」「最小化」「拡大」ボタンのみが表示され、これらとウインドウのコンテンツとを分ける線はありません。このUIデザインでは、ウインドウの高さ全体にコンテンツ領域が広がっています。

以下の図は、2つのウインドウにそれぞれのスタイルを示したものです。1つ目のウインドウにはタイトルバーが表示されていますが、2つ目のウインドウにはありません。

上下に並んだ2つのウインドウのスクリーンショット。それぞれのウインドウのコンテンツ領域には暗色の背景が表示されている。

タイトルバーの削除

タイトルバーなしのウインドウをデザインする場合は、ウインドウからタイトルバーを削除する必要があります。タイトルバーを削除するには、タイトルバーのtitleVisibilityプロパティをUITitlebarTitleVisibility.hiddenに設定し、toolbarプロパティをnilに設定します。以下のコードは、新しいシーンの設定時にウインドウからタイトルバーと分離線を削除する方法を示しています。


func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
    
    guard let windowScene = (scene as? UIWindowScene) else { return }
    
    #if targetEnvironment(macCatalyst)
    if let titlebar = windowScene.titlebar {
        titlebar.titleVisibility = .hidden
        titlebar.toolbar = nil
    }
    #endif


}

関連項目

ユーザーインターフェイス