Example:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | struct ContentView : View { @State private var number = 0 var body : some View { VStack { Text ( String ( number )) . modifier ( NumberView ( number : number )) Button ( "Animate" ) { withAnimation ( Animation . easeInOut ( duration : 2 )) { number = 100 } } } } } struct NumberView : AnimatableModifier { var number : Int var animatableData : CGFloat { get { CGFloat ( number ) } set { number = Int ( newValue ) } } func body ( content : Content ) - > some View { Text ( String ( number )) } } |