Ios SwiftUI-显示一次文本后,从一开始就为其设置动画
我已经为一个文本设置了动画,当按下按钮时,文本中显示一个变量,当显示“Spring”动画时 如果变量更改,文本将仅在显示的末尾更改 问题在于,正因为如此,当再次按下按钮时,“弹簧”动画仅适用于文本的结尾 我尝试让按钮先清除文本,然后重写,但动画仍然只应用于更改的部分 有没有办法让文本完全重新出现,或者从一开始就让它复活 下面是相关的代码位Ios SwiftUI-显示一次文本后,从一开始就为其设置动画,ios,swift,swiftui,Ios,Swift,Swiftui,我已经为一个文本设置了动画,当按下按钮时,文本中显示一个变量,当显示“Spring”动画时 如果变量更改,文本将仅在显示的末尾更改 问题在于,正因为如此,当再次按下按钮时,“弹簧”动画仅适用于文本的结尾 我尝试让按钮先清除文本,然后重写,但动画仍然只应用于更改的部分 有没有办法让文本完全重新出现,或者从一开始就让它复活 下面是相关的代码位 Button(action: { self.outputText = "T
Button(action: {
self.outputText = "This is my variable: \(variable)."
}) {
Text("Button text")
}
Text(outputText)
.animation(.spring())
这里是可能的方法-只是清除和更新有点延迟 使用Xcode 12/iOS 14准备并测试演示
这似乎是完美的,非常感谢你,我会试试这个!
Button(action: {
self.outputText = ""
DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
self.outputText = "This is my variable: \(variable)."
}
}) {
Text("Button text")
}
Text(outputText)
.animation(.spring())