【发布时间】:2022-12-04 18:12:40
【问题描述】:
我正在尝试将 NavigationStack 集成到我的 SwiftUI 应用程序中,我有四个视图 CealUIApp、OnBoardingView、UserTypeView 和 RegisterView。当用户按下OnBoardingView中的按钮时,我想从OnBoardingView导航到UserTypeView,当用户按下UserTypeView 中的按钮时,我想从UserTypeView导航到RegisterView
下面是我的 CealUIApp 代码
@main
struct CealUIApp: App {
@State private var path = [String]()
var body: some Scene {
WindowGroup {
NavigationStack(path: $path){
OnBoardingView(path: $path)
}
}
}
}
在OnBoardingView
Button {
path.append("UserTypeView")
} label: {
Text("Hello")
}.navigationDestination(for: String.self) { string in
UserTypeView(path: $path)
}
在UserTypeView
Button {
path.append("RegisterView")
} label: {
Text("Hello")
}.navigationDestination(for: String.self) { string in
RegisterView()
}
当按下UserTypeView中的按钮时,我不断导航到UserTypeView而不是RegisterView,Xcode中的消息显示Only root-level navigation destinations are effective for a navigation stack with a homogeneous path.
【问题讨论】: