Ios 在SwiftUI中弹出特定视图,就像我们使用的;popToViewController";

Ios 在SwiftUI中弹出特定视图,就像我们使用的;popToViewController";,ios,swiftui,Ios,Swiftui,在SwiftUI中是否可以返回到特定视图?就像我们有控制器的时候一样 代码如下所述 let arr = self.navigationController?.viewControllers for controller in arr!{ if controller.isKind(of: ViewController.classForCoder()){ self.navigationController?.popToViewController(controll

在SwiftUI中是否可以返回到特定视图?就像我们有控制器的时候一样 代码如下所述

let arr = self.navigationController?.viewControllers
for controller in arr!{
            if controller.isKind(of: ViewController.classForCoder()){

     self.navigationController?.popToViewController(controller, animated: true)
            }
} 
现在假设我有4个视图:->如代码中所述

struct View1: View {
    var body: some View {
        NavigationView {
            NavigationLink(destination: View2()) {
                    Text("Navigate to View2")
                }
        }
    }
}

struct View2: View {
    var body: some View {
        NavigationLink(destination: View3()) {
            Text("Navigate to View3")
        }
    }
}

struct View3: View {
    var body: some View {
        NavigationLink(destination: View4()) {
            Text("Navigate to View4")
        }
    }
}

struct View4: View {
    var body: some View {
        Text("4")
    }
}

是否可以从View4弹出到View2???“跳过视图3” 或从视图3到视图1
同样,UIKit

您是否尝试创建一个环境对象来决定在屏幕出现或消失后显示哪个屏幕?您如何从@EnvironmentObject中做出决定?同样的问题在每个社交媒体上都找不到解决方案。当我使用NotificationCenter时,这是一个奇怪的破解,但这是一个工作。看看这个问题,我为SwiftUI()创建了一个开源导航堆栈,您可以使用它弹出到特定的视图。感谢@superpuccio的回答。您是否尝试创建环境对象来决定在屏幕出现或消失后显示哪个屏幕?您如何从@EnvironmentObject中决定?同样的问题没有在每个社交媒体上找到任何解决方案。当我使用NotificationCenter时,这是一个奇怪的破解,但这是一个工作。看看这个问题,我为SwiftUI()创建了一个开源导航堆栈,您可以使用它弹出到特定的视图。谢谢@superpuccio的回答