SwiftUI - NavigationView 标题和后退按钮在方向更改后裁剪在状态栏下

ahe*_*eze 9 ios swift swiftui swiftui-navigationview

每当我将设备旋转到横向并再次返回时,顶部 NavigationView(包括标题和后退按钮)都会被夹在状态栏下方。

编辑:最小可重现示例:

struct ContentView: View {
    var body: some View {
        NavigationView {
            ScrollView {
                VStack {
                    ForEach(0..<15) { _ in
                        Text("Filler")
                        .frame(maxWidth: .infinity)
                        .background(Color.green)
                        .padding()
                    }
                }
            }
            .navigationBarTitle("Data")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

只要内容是可滚动的,就会发生故障。我最初是在使用List. 如果我先单击一行,转到弹出视图,然后旋转设备,或者只是在主屏幕中旋转回来,都没有关系。

struct ContView: View {
    let data = ["One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen", "Fourteen"]
    var body: some View {
        NavigationView {
            List {
                ForEach(data, id: \.self) { word in
                    NavigationLink(destination:
                        Text("Link")
                    ) {
                        Text(word)
                    }
                }
            }
            .navigationBarTitle("Data", displayMode: .large)
            .listStyle(InsetGroupedListStyle())
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在主屏幕中旋转:

点击一行后旋转:

这是一个错误,还是我做错了什么?

我也在控制台打印了这个:

2020 年 10 月 19 日 09:05:30.613243-0700 MyAppName[43106:5613320] < TtGC7SwiftUI19UIHostingControllerGVS_15ModifiedContentVVS_22_VariadicView_0GVS_15ModifiedContentVVS_22_VariadicView_0GVS_15ModifiedContentVVS_22_VariadicView_22_Variadic_0GVS_12_VariadicView_10101000000000006 :5613320开始/结束外观转换的不平衡调用

Xcode 版本:12.0 (12A7209),在 iOS 14.0 上的 iPhone 7 Plus 上运行

Mcr*_*ich 1

尝试添加顶部填充NavigationView