小编Dan*_*ran的帖子

SwiftUI NavigationView 不记得状态

我在 SwiftUI 中使用 NavigationView 时遇到了以下问题。

我在 TabView 中嵌入了一个 NavigationView,如下所示:

var body: some View {
   TabView {
      NavigationView {
         View1()
      }
         .tabItem { Text("View 1") }
         .tag(1)
      View2()
         .tabItem {Text("View 2") }
         .tag(2)
   }
}
Run Code Online (Sandbox Code Playgroud)

在第一个选项卡上,我将多个视图推送到NavigationView,但是当切换到第二个选项卡然后切换回第一个选项卡时,再次NavigationView变为View1(),所有推送的视图都被删除。证明如下:

一步步

预期行为是切换到第一个选项卡时,显示付款视图而不是主页。

有没有办法把 NavigationView 的状态放到一个外部@EnvironmentObject,例如,这样NavigationView切换后的状态保持不变。

swift swiftui

7
推荐指数
1
解决办法
786
查看次数

标签 统计

swift ×1

swiftui ×1