【发布时间】:2021-05-21 11:26:43
【问题描述】:
假设我的应用程序有两个页面;登录页面和主页。我分别用 SwiftUI View 创建了这两个。我将如何在他们之间进行过渡。我尝试了 NavigationView,但第二页打开时带有 NavigationBar(第一页名为箭头)。综上所述,如何干净利落地切换两个视图?
【问题讨论】:
假设我的应用程序有两个页面;登录页面和主页。我分别用 SwiftUI View 创建了这两个。我将如何在他们之间进行过渡。我尝试了 NavigationView,但第二页打开时带有 NavigationBar(第一页名为箭头)。综上所述,如何干净利落地切换两个视图?
【问题讨论】:
你可以简单地使用 switch 或 if/else :)
class Wnd : View {
@State var firstShown: Bool
var body: some View {
if firstShown {
FirstView(firstShown: $firstShown)
}
else
{
SecondView(firstShown: $firstShown)
}
}
}
firstView 和 secondView 绑定到 firstShown var
另一种解决方案是使用handlesExternalEvents 切换视图。
使用示例:https://stackoverflow.com/a/65415593/4423545
另一种解决方案是隐藏 NavigationBar:
.navigationBarHidden(true)
【讨论】: