**已关闭。**此问题需要debugging details。它目前不接受回答。
编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答这个问题。
8天前关闭
Improve this question
我正试图让我的头周围动画的条件下,一个VStack被删除,一个额外的VStack出现。当NavigationStack推入视图时,subscriptionProduct
被加载,这意味着当主体滑入时,视图会发生快速变化,理想情况下,我希望VStack 1淡出,然后VStack 2淡入。
我已经看了一个布尔方法,但不知道如何将动画应用于两者。
@EnvironmentObject var subscriptionManager: SubscriptionManager
var body: some View {
if(subscriptionManager.subscriptionProduct != nil){
// VStack 1
VStack{}
}else {
// VStack 2
VStack{}
}
}
2条答案
按热度按时间ebdffaop1#
我想这段代码会对你有所帮助,你可以调整动画的类型和持续时间来满足你的需要。您还可以将其他动画添加到VStack本身,例如淡入淡出动画或缩放动画。
xdyibdwo2#
我可以通过在ZStack中包围两个VStack,然后将修改器
.animation(.easeIn, value: subscriptionManager.productsReady)
添加到ZStack来添加动画。现在,当bool
productsReady
更新为true时,视图会根据需要进行更改。