我的 SwiftUI 应用程序上非常正常的导航发生了奇怪的崩溃
我有一个简单的选项卡视图:
struct FFTabView: View {
var body: some View {
TabView {
LibraryView2()
}
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
.navigationBarTitle("", displayMode: .inline)
}
}
// MARK: -
struct LibraryView2: View {
var body: some View {
VStack {
NavigationLink(destination: Foo()) {
Text("go to foo")
}
}
.tabItem {
Image(systemName: "square.grid.2x2.fill")
Text("Skill Library")
}
}
}
struct Foo: View {
var body: some View {
Text("foo view")
}
}
Run Code Online (Sandbox Code Playgroud)
当我通过导航栏返回时,Foo
我遇到了崩溃:Tried to pop to a view controller that doesn't exist
知道这里发生了什么吗?我找不到与此和 SwiftUI 相关的任何内容,所以我想我会发布。谢谢
虽然您没有指定,但我认为您FFTabView
的包裹在NavigationView
某个地方。
最终,您的视图层次结构看起来像
NavigationView {
TabView {
NavigationLink {
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
如果你重组你的视图层次结构,就像
TabView {
NavigationView {
NavigationLink {
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
崩溃不会发生。
编辑: 我已经确认它与这个答案中讨论的回归/错误有关,在 Xcode 11.2 中引入。您的原始代码在 Xcode 11.1 中运行良好。
归档时间: |
|
查看次数: |
1356 次 |
最近记录: |