SwiftUI:如何弹出到WatchOS的根视图?

SwiftUI:如何弹出到WatchOS的根视图?,swiftui,watchkit,apple-watch,watchos,Swiftui,Watchkit,Apple Watch,Watchos,我需要从深层细节视图跳转到根视图。虽然下面使用isDetailList和isActive的解决方案在iOS上运行得很好,但在watchOS上却不起作用。isDetailList命令在watchOS中不可用 import SwiftUI class AppState : ObservableObject { @Published var showState : Bool = false } struct MoreTests: View { @EnvironmentObject

我需要从深层细节视图跳转到根视图。虽然下面使用isDetailList和isActive的解决方案在iOS上运行得很好,但在watchOS上却不起作用。isDetailList命令在watchOS中不可用

import SwiftUI

class AppState : ObservableObject {
    @Published var showState : Bool = false
}

struct MoreTests: View {
    @EnvironmentObject var appState : AppState    // injected from SceneDelegate
    var body: some View {
        NavigationView {
            NavigationLink(
                destination: MoreView1(),
                isActive: $appState.showState,      // required to work
                label: { Text("Go to MoreView1") }
            ).isDetailLink(false)       // required to work
        }.navigationBarTitle("Root")
    }
}

struct MoreView1: View {
    var body: some View {
        NavigationLink(
            destination: MoreView2(),
            label: { Text("Go to MoreView2") }
        )
        .navigationBarTitle("MoreView1")
    }
}

struct MoreView2: View {
    var body: some View {
        NavigationLink(
            destination: MoreView3(),
            label: { Text("Go to MoreView3") }
        )
        .navigationBarTitle("MoreView2")
    }
}

struct MoreView3: View {
    @Environment(\.presentationMode) var presentationMode
    @EnvironmentObject var appState : AppState
    var body: some View {
        VStack {
            Button(action: {
                self.appState.showState = false       // required
            }) {
                Text("Dismiss to root")
            }
        }.navigationBarTitle("MoreView3")
    }
}

iOS解决方案来自这里-->

你找到答案了吗?谢谢。这仍然是一个问题,在7.0中无法解决。我们做了一个不优雅的变通办法。