更改NavigationView标题SwiftUI的颜色

时间:2019-07-11 12:11:34

标签: ios swiftui navigationview

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

我已经做到了:

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

但是标题仍然是黑色的,我看了看文档,显然有一个名为navigationViewStyle的属性,我什至不知道这是否有帮助,但是不管我放在哪里,都说它不是成员整个班级的Navigation View和docs基本上都是空白...所以任何人都设法弄清楚了吗?

理想情况下,我也将Font更改为与我的应用程序其余部分匹配的字体,但是由于它似乎忽略了设置为Text对象的任何标签,而这并不是应该这样做的?

1 个答案:

答案 0 :(得分:2)

您可以为此使用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"))
             }
          }
       }
    }