Swiftui 带滑出菜单的快速用户界面导航

Swiftui 带滑出菜单的快速用户界面导航,swiftui,Swiftui,我有一个SwiftUI应用程序,我很难让导航正常工作。任何接近于工作的东西都会让人感觉像是被砍掉了一样。我有一个滑出菜单,我做了如下我也有多个视图,我想显示当一个项目从滑出菜单被选中。我有一个菜单类,如下所示 enum菜单项{ 案例子视图1 案例子视图2 案例子视图3 案例子视图4 案例子视图5 } 类侧菜单:ObservieObject{ @已发布变量显示:Bool=false @已发布的变量选择:menuItems=menuItems.Events } 然后我的ContentView如下所

我有一个SwiftUI应用程序,我很难让导航正常工作。任何接近于工作的东西都会让人感觉像是被砍掉了一样。我有一个滑出菜单,我做了如下我也有多个视图,我想显示当一个项目从滑出菜单被选中。我有一个菜单类,如下所示

enum菜单项{
案例子视图1
案例子视图2
案例子视图3
案例子视图4
案例子视图5
}
类侧菜单:ObservieObject{
@已发布变量显示:Bool=false
@已发布的变量选择:menuItems=menuItems.Events
}
然后我的ContentView如下所示

struct ContentView:View{
@环境对象变量菜单:侧菜单
var body:一些观点{
GeometryReader{中的几何体
MainView()
.框架(宽度:几何体.尺寸.宽度,高度:几何体.尺寸.高度)
.offset(x:self.menu.show?geometry.size.width/2:0)
.禁用(self.menu.show?真:假)
如果self.menu.show{
MenuView()
.框架(宽度:几何尺寸宽度/2)
.transition(.move(边:。前导))
}
}
}
}
结构内容视图\u预览:PreviewProvider{
静态var预览:一些视图{
ContentView()
}
}
结构主视图:视图{
@环境对象变量菜单:侧菜单
var featureDetailView:一些视图{
切换菜单。选择{
case menuItems.subview 1:
返回任意视图(子视图1())
案例菜单项。子视图2:
返回AnyView(子视图2())
case menuItems.subview 3:
返回任意视图(子视图3())
case menuItems.subview 4:
返回AnyView(子视图4())
case menuItems.subview 5:
返回AnyView(子视图5())
}
}
var body:一些观点{
导航视图{
featureDetailView
.navigationBarTitle(文本(“子视图1标题”),显示模式:。内联)
.navigationBarItems(领先:(
按钮(操作:{
动画片{
self.menu.show.toggle()
}
}) {
图像(系统名称:“line.horizontal.3”)
.imageScale(.large)
.foregroundColor(.白色)
}
))
.background(导航配置程序{nc in
nc.navigationBar.barTintColor=.systemBlue
nc.navigationBar.titleTextAttributes=[.foregroundColor:UIColor.white]
})
}
.navigationViewStyle(StackNavigationViewStyle())
}
}
结构MainView\u预览:PreviewProvider{
静态var预览:一些视图{
MainView()
}
}
因此ContentView负责显示主视图或滑出菜单。然后,MainView将根据
菜单的值显示正确的子视图。选择
。所有这些都可以工作,但处理导航是混乱的,我想知道是否有更好的方法来做到这一点?当显示不同的子视图时,我在更改navigationBarTitle时也遇到了问题