J'utilise SwiftUI avec Xcode 11 et je veux changer la police NavigationBarTitle
avec ces lignes de codes:
.navigationBarTitle (Text("Navigation Bar Title"), displayMode: .inline)
.font(.subheadline)
mais rien ne s'est passé. une suggestion ou un commentaire?
Je pense que vous devez créer un NavigationBarBuilder.
struct NavigationBarBuilder: UIViewControllerRepresentable {
var build: (UINavigationController) -> Void = { _ in }
func makeUIViewController(context: UIViewControllerRepresentableContext<NavigationBarBuilder>) -> UIViewController {
UIViewController()
}
func updateUIViewController(_ uiViewController: UIViewController, context: UIViewControllerRepresentableContext<NavigationBarBuilder>) {
if let navigationController = uiViewController.navigationController{
self.build(navigationController)
}
}
}
et vous pouvez l'utiliser dans votre affichage de contenu.
struct ContentView: View {
var body: some View {
NavigationView {
Text("")
.navigationBarTitle("Türkiye", displayMode: .inline)
.background(NavigationBarBuilder {navigationController in
navigationController.navigationBar.barTintColor = .red
navigationController.navigationBar.titleTextAttributes = [.foregroundColor: UIColor.white]
})
}
.navigationViewStyle(StackNavigationViewStyle())
}
}
Bonne chance...