наверняка есть лучшие и более элегантные способы ее решения, но один из них будет:
struct ContentView: View {
@State var y : CGFloat = 100
@State var addThis: CGFloat = 100
var body: some View {
Text("Hello, World!")
.position(x: 100, y: y)
.onAppear() {
Timer.scheduledTimer(withTimeInterval: 1, repeats: true) { (timer) in
withAnimation() {
self.addThis = -self.addThis
self.y = self.y + self.addThis
}
}
}
}
}