tvOS SwiftUI TabView Динамическое изменение цвета панели

У меня есть приложение 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()
    }
}

person Andrew Dorsett    schedule 26.02.2021    source источник
comment
Когда вы хотите, чтобы он стал зеленым? Я думаю, что достаточно вставлять UITabBar.appearance().barTintColor = UIColor.green всякий раз, когда это происходит.   -  person aheze    schedule 26.02.2021
comment
Я хочу, чтобы он стал зеленым при обновлении переменной состояния. Как логическое значение isConnected.   -  person Andrew Dorsett    schedule 26.02.2021
comment
Попробуйте что-нибудь вроде этого   -  person aheze    schedule 26.02.2021
comment
Отрицательный. onChange выполняется тогда, когда должно, когда изменяется состояние var, но не меняет цвет фона. Похоже, TabView устанавливает цвет фона только при создании, и при обновлении внешнего вида он не перерисовывается. Я столкнулся с этим, но на tvOS это ничего не меняет. schwiftyui.com/swiftui/customizing-your-tabviews-bar-in -swiftui   -  person Andrew Dorsett    schedule 26.02.2021