タイトル表示モードの切り替え ナビゲーションバータイトルのカスタマイズ

この記事は約2分で読めます。
  • iOS:14.0以上
  • XCode(当サイトの環境):15.0.1

SwiftUIで.navigationBarTitleDisplayMode(_:)を使用すると、ナビゲーションバーのタイトル表示モードをカスタマイズできます。

このモディファイアには.inline.large、または.automaticのいずれかの値を指定します。
.inlineはタイトルをナビゲーションバーの中に小さく表示し、.largeは大きく表示します。
.automaticを指定すると、プラットフォームのデフォルト設定に従います。

パラメータ

  • automatic:プラットフォームのデフォルト設定に従う
  • inline:ナビゲーションバーの中で小さく表示する
  • large:ナビゲーションバーで大きく表示する(デフォルト設定と同じ)

使用例は以下の通り:

import SwiftUI

struct NavigationBar: View {
    var body: some View {
        NavigationStack {
            List {
                NavigationLink("詳細を表示", destination: ChildNavigationBar())
            }
            .navigationTitle("ビュータイトル")
            // ナビゲーションタイトルの表示モードを指定
            .navigationBarTitleDisplayMode(.large)
        }
    }
}

このコードでは、ナビゲーションバーのタイトルを”large”モードで表示しています。

パラメータによる見た目の変化

.large
.inline

まとめ

表示モードを切り替えることができることを覚えておくと、ナビゲーションバータイトルを小さく表示したいビューなどに活用できます。

タイトルとURLをコピーしました