これはUIKitではなくSwiftUIに関する質問です
SwiftUI を使用してナビゲーション バーのタイトルに別のフォントを設定しようとしています。これはまだサポートされていないのではないかと思います。試したことは次のとおりです。
var body: some View {
NavigationView {
.navigationBarTitle(Text("Dashboard").font(.subheadline), displayMode: .large)
}
}
設定をどう変えても.font
テキストは変わりません。カスタムフォントを設定したり、displayMode
プロパティを削除したりも試しました。
これを動作させることができた人はいますか?
ベストアンサー1
SwiftUIでは、この時点ではnavigationBarTitle
フォントを直接変更することはできませんが、次のようにナビゲーションバーの外観を変更することができます。
struct YourView: View {
init() {
//Use this if NavigationBarTitle is with Large Font
UINavigationBar.appearance().largeTitleTextAttributes = [.font : UIFont(name: "Georgia-Bold", size: 20)!]
//Use this if NavigationBarTitle is with displayMode = .inline
//UINavigationBar.appearance().titleTextAttributes = [.font : UIFont(name: "Georgia-Bold", size: 20)!]
}
var body: some View {
NavigationView {
Text("Hello World!")
.navigationBarTitle(Text("Dashboard").font(.subheadline), displayMode: .large)
//.navigationBarTitle (Text("Dashboard"), displayMode: .inline)
}
}
}