我正在使用SwiftUI玩些游戏,并且想要构建一个测试应用程序,但是我不喜欢Modal演示风格,而是希望它们全屏显示。经过一番谷歌搜索后,我得到了:
var body: some View {
Group {
if one {
MainView()
} else if two {
SecondView()
} else if three {
ThirdView()
} else {
ForthView()
}
}
}
这是如何工作的,例如在ContentView()
中,单击一个按钮,该按钮将切换一个布尔值@State
,该布尔值本身将重新加载此视图,并且将显示Group
内部的其中一个视图。现在,我希望它具有动画/过渡效果,以便您实际看到MainView()
从右侧滑入,并且SecondView()
过渡到顶部。
我尝试将每个视图放在withAnimation { }
内,还设置.transition(move(.top))
,但似乎没有任何效果。
在SwiftUI中可以这样做吗?
我希望它们为动画