SwiftUI 无法使用 navigationLink 来回导航
Posted
技术标签:
【中文标题】SwiftUI 无法使用 navigationLink 来回导航【英文标题】:SwiftUI unable to navigate back and forth with navigationLink 【发布时间】:2020-04-16 10:23:34 【问题描述】:请注意,在 gif 中,一旦我导航并关闭新视图,我将无法返回!这是 SwiftUI 错误还是滥用 NavigationLinks?
struct ContentView: View
var body: some View
return NavigationView
NavigationLink(destination: FakeView1())
Text("Navigate")
struct FakeView1: View
var body: some View
Text("Hey")
【问题讨论】:
***.com/questions/56829974/… 看起来这是一个错误。请看this An extensive discussion 来自苹果开发者论坛关于此问题。到目前为止似乎没有解决方法。 我可以假设您将 Xcode 更新到 11.3... 我建议降级到 11.1。 哇,好的,谢谢。我并不着急,所以我会等到它按预期运行。我认为 Apple 已经意识到了这一点...... 【参考方案1】:这似乎是 swiftUI 错误。我也遇到了同样的问题,所以我使用了这个解决方法。
struct ContentView: View
@State var isFakeActive: Bool = false
var body: some View
NavigationView
NavigationLink(destination: FakeView1(isFakeActive: self.$isFakeActive), isActive: self.$isFakeActive)
Text("Navigate")
对于你的 FakeView1 类。
struct FakeView1: View
@Binding var isFakeActive: Bool
var body: some View
Text("Hey")
.navigationBarItems(leading: Button(action:
self.isFakeActive = false
, label:
HStack
Image(systemName: "arrow.left")
Text("Back")
))
我已经测试过了,它工作正常。
【讨论】:
【参考方案2】:这是模拟器错误。用你的设备试试
【讨论】:
以上是关于SwiftUI 无法使用 navigationLink 来回导航的主要内容,如果未能解决你的问题,请参考以下文章
SwiftUI - 如何基于@ObservedObject 为每个列表视图项创建编辑视图
SwiftUI:无法使用 UIActivityViewController 共享图像