更改默认的蓝色 TabBar

Change default blue color TabBar

使用 TabView.tabItem 创建 TabBar 时,默认颜色为:未单击图像时为灰色,单击时为蓝色。这是示例代码。

struct TabBar: View{
@State var current = 0
var body: some View{
    TabView(selection: $current) {
        
         View0()
            .tag(0)
            .tabItem {
                Image(systemName: "anySystemImageName")
                Text("")
            }
         View3()
            .tag(1)
            .tabItem {
                Image(systemName: "anySystemImageName")
                Text("")
            }
         View2()
            .tag(2)
            .tabItem {
                Image(systemName: "anySystemImageName")
                Text("")
            }
            View3()
            .tag(3)
                .tabItem {
                    Image(systemName: "anySystemImageName")
                    Text("")
                }
  
    }
}
}

如何使用自定义颜色?

.accentColor是关键字改变颜色

struct ContentView: View{
    @State var current = 0
    var body: some View{
        TabView(selection: $current) {
            Text("View 1")
                .tag(0)
                .tabItem {
                    Image(systemName: "circle")
                    Text("")
                }
                
            Text("View 1")
                .tag(1)
                .tabItem {
                    Image(systemName: "circle")
                    Text("")
                }
            Text("hallo")
                .tag(2)
                .tabItem {
                    Image(systemName: "circle")
                    Text("")
                }
            
            Text("hallo")
                .tag(3)
                .tabItem {
                    Image(systemName: "circle")
                    Text("")
                }
        }.accentColor(.red) //<< here
    }
}

你可以使用强调色,比如

    TabView(selection: $current) {
        
       // .. other code
  
    }.accentColor(.red)      // << here !!