У меня есть фрагмент кода, который заставляет мой текст отображаться в середине экрана и кратко вводить и выводить, идеально. НО он делает это только при первом вызове функции. В следующий раз он показывает текст, но не анимацию.
VStack {
GameView(showText: self.$showText, imageName: self.$imageName)
Button(action: {
withAnimation {
self.showText.toggle()
self.attempts += 1
}
}, label: {
Text("Show / Hide Text")
})
}
if self.showText {
VStack {
Spacer()
HStack {
Spacer()
Image(imageName)
//animation here
.scaleEffect(scale)
.onAppear{
let baseAnimation = Animation.easeInOut(duration: 0.5)
let repeated = baseAnimation.repeatForever(autoreverses: true)
return withAnimation(repeated) {
self.scale = 0.5
}
}
Spacer()
}
Spacer()
}
}
}
Должен ли я использовать что-то, кроме On Appear?
спасибо Always Striving