更改 NavigationView Title SwiftUI 的颜色

Change colour of NavigationView Title SwiftUI

是否可以更改 NavigationView 标题的颜色?

我已经这样做了:

NavigationView
{
    Form
    {
        // Form Stuff
    }
    .navigationBarTitle(Text("Profile").color(Color.white))
}

但是标题仍然是黑色,我查看了文档,显然有一个名为 navigationViewStyle 的 属性 我什至不知道这是否有帮助,但无论我把它放在哪里它说它不是 Navigation View 的成员,并且文档基本上整个 class 都是空白的...所以有人设法解决这个问题了吗??

理想情况下,我也会更改字体,使其与我的应用程序的其余部分匹配,但由于它似乎只是忽略了设置为文本的任何标签 object 我假设这不是它应该的方式完成了吗?

你可以使用 UINavigationBar.appearance()

检查下面的代码:

    struct ContentView : View {

        init() {
            UINavigationBar.appearance().largeTitleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.green]
            UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.foregroundColor:UIColor.green]
        }

        var body: some View {
          NavigationView {
              Form {
              // Form Stuff
              }
             .navigationBarTitle(Text("Profile"))
             }
          }
       }
    }