У меня есть приложение tvOS с TabView вверху. Я хочу использовать цвет фона TabView для обозначения статуса. Первоначально он будет красным, и когда что-то происходит в одном из представлений, я хочу изменить цвет фона TabView на зеленый.
Я использую UITabBar.appearance().barTintColor = UIColor.red
в моем init()
, чтобы установить начальный цвет на красный, но я не могу найти способ изменить его на зеленый позже при выполнении.
struct ContentView: View {
@State private var selection = 1
init() {
UITabBar.appearance().barTintColor = UIColor.red
}
var body: some View {
TabView (selection:$selection){
Tab1View()
.tabItem {
Image(systemName: "1.square.fill")
Text("Tab 1")
}
.tag(1)
Tab2View()
.tabItem {
Image(systemName: "2.square.fill")
Text("Tab 2")
}.tag(2)
Tab3View()
.tabItem {
Image(systemName: "3.square.fill")
Text("Tab 3")
}.tag(3)
}
.font(.headline)
.accentColor(.white)
.ignoresSafeArea()
}
}
UITabBar.appearance().barTintColor = UIColor.green
всякий раз, когда это происходит. - person aheze   schedule 26.02.2021