如何更改SwiftUI背景而不丢失导航栏UI?

如何更改SwiftUI背景而不丢失导航栏UI?,swift,swiftui,Swift,Swiftui,我试图将视图背景颜色更改为特定颜色,但是,每当我使用基本Zstack方式添加它时,它就会丢失导航栏UI。(见图) 编辑的代码 此方法不适用于我: var body: some View { ZStack{ Color("Background") .edgesIgnoringSafeArea(.vertical) VStack { ScrollView { Z

我试图将视图背景颜色更改为特定颜色,但是,每当我使用基本Zstack方式添加它时,它就会丢失导航栏UI。(见图)

编辑的代码

此方法不适用于我:

var body: some View {
    ZStack{
        Color("Background")
            .edgesIgnoringSafeArea(.vertical)
        VStack {
            ScrollView {
                ZStack {

                    VStack {
                        HStack{
                            VStack (alignment: .leading) {
                                Text("")
                            }
                        }
                    }
                }
            }
            Text("")
        }
    }
}
具有简单ZStack的当前用户界面:

所需用户界面:


如何在不丢失导航栏UI的情况下更改SwiftUI中的背景色?

在SwiftUI发展的这一阶段,只能通过UIKit解决问题

下面是一个可能方法的演示(使用Xcode 12.1/iOS 14.1进行测试):

var主体:一些视图{
导航视图{
VStack{
滚动视图{
VStack{

ForEach(0..抱歉,我应该提到我在Scrollview之外有元素。我将发布我的问题的编辑,以及当前UI的屏幕截图和您的建议。正如您将看到的,背景更改不起作用…请参阅使用已知的解决方法更新。非常好,谢谢。
var body: some View {
    NavigationView {
            VStack {
                ScrollView {
                    VStack {
                        ForEach(0..<50) {
                            Text("Item \($0)")
                        }
                    }
                }
                Text("Test").navigationTitle("Test")
                .background(UINavigationConfiguration { nc in
                     nc.topViewController?.view.backgroundColor = .yellow
                })
            }
    }
}