gpt4 book ai didi

SwiftUI NavigationView 不记得状态

转载 作者:行者123 更新时间:2023-12-03 09:23:24 25 4
gpt4 key购买 nike

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

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

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

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

Step By Step

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

无论如何将 NavigationView 的状态置于外部 @EnvironmentObject ,例如,使 NavigationView 的状态切换后保持不变。

最佳答案

是的,有一种非常简单的方法可以通过 NavigationLink 使用状态。
有一个可选的属性 isActive 你给一个 @Binding 变量,它也可以来自外部环境对象,使用可观察对象内的@Published 属性。
如果您想了解更多关于 SwiftUI NavigationView 的信息,包括导航链接,请考虑查看这个很棒的 video通过保罗 hudson 。它对我个人帮助很大。

关于SwiftUI NavigationView 不记得状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58334589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com