Цвет SwiftUI Navbar искажается, когда ZStack присутствует в поле зрения - PullRequest
0 голосов
/ 23 февраля 2020

Я хотел бы установить цвет фона navBar на любой цвет, однако я заметил, что при установке цвета navBar для представления, имеющего ZStack, вводится определенный UIVisualEffectBackDropView, и это вызывает эффект размытия на navBar.

Как установить цвет navBar

Вот мой код:

struct TestView: View {

    init() {
        UINavigationBar.appearance().backgroundColor = .blue
    }

    var body: some View {
        ZStack(alignment: .top) {

            HStack {
                Button(action: {
                    print("test code")
                }) {
                    Text("Button")
                }

                Spacer()
            }
            .offset(y: 256/2)
            .zIndex(1)

            ToyView()
            .frame(width: 150,
            height: 400 * (2/3))

            Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/)
        }
        .navigationBarTitle(Text("SAVED"), displayMode: .inline)
        .navigationBarItems(trailing: Image(systemName: "heart"))
    }
}

struct TestView_Previews: PreviewProvider {
    static var previews: some View {
        TestView()
    }
}

ContentView:


struct ContentView: View {
    @State private var date = Date()
    var body: some View {
        TabView {
            NavigationView {
                TestView()
                    .font(.callout)
            }

        }.edgesIgnoringSafeArea(.top)
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}


Вывод :

View

View Hierachy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...