更改默认的蓝色 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 !!
使用 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 !!