在我的应用程序中发现,当设备方向改变时,某些视图中的导航栏项目会消失。这似乎只发生在使用 NavigationLink 打开的视图中,主视图导航栏项目按预期工作。与此相关的 iOS 13.7 和 iOS 14.2 之间似乎发生了一些变化。此外,使用前导项还是尾随项似乎并不重要,两者都会消失。
发生这种情况的示例片段:
struct ContentView: View {
var detailView: some View {
Text("This is detail view")
.navigationBarTitle("Detail view title", displayMode: .inline)
.navigationBarItems(trailing: Button(action: {}, label: {
Image(systemName: "pencil.circle.fill")
}))
}
var body: some View {
NavigationView {
NavigationLink(
destination: detailView,
label: {
Text("Open detail view")
})
.navigationBarTitle("Main view")
}.navigationViewStyle(StackNavigationViewStyle())
}
}
只有在真实设备上运行时才会出现此问题。(在我的情况下是 iPhone 11)在模拟器上一切都按预期工作。
其他人看到过类似的问题吗?解决方法/修复?