当变量的值更改和视图更新时,如何给变量提供不同的动画和过渡? 例如: 我有一个状态和绑定变量,我希望在正常显示时使用“动画A”,但在值更改时希望使用“动画B”。
更新: 这是示例代码:
struct ParentView: View {
@State var StateVar = {name: "Lily", city: "San Jose"}
var body: some View {
ChildView(bindingVar: $StateVar)
Text("Name: \(StateVar.name)")
Text("City: \(StateVar.city)")
}
}
===========
struct ChildView: View {
@Binding var bindingVar: json
var body: some View {
Button(action: {
bindingVar.city = "Sunnyvale"
}) {
Text("Change city name")
}
}
}
现在,如果我希望Text("City: \(StateVar.city)")
的过渡在ParentView首次加载时变为.slide,而在其值更改时(在ChildView中)变为.scale,我该如何完成呢?
谢谢。