# Explicit Animation You can create explicit animation with your custom settings. > **NOTE** > > The APIs of this module are supported since API version 7. Updates will be marked with a superscript to indicate their earliest API version. | API | Description | | ------------------------------------------------------------ | ------------------------------------------------------------ | | animateTo(value: [AnimateParam](#animateparam), event: ()=> void) : void | Provides a transition animation when the status changes due to the closure code.
**event** specifies the closure function that displays the dynamic effect. The system automatically inserts the transition animation if the status changes in the closure function.| ## AnimateParam | Name| Type| Description| | -------- | -------- | -------- | | duration | number | Animation duration, in ms.
Default value: **1000**| | tempo | number | Animation playback speed. A larger value indicates faster animation playback, and a smaller value indicates slower animation playback. The value **0** means that there is no animation.
Default value: **1.0**| | curve | Curve \| Curves | Animation curve.
Default value: **Curve.Linear**| | delay | number | Delay of animation playback, in ms. By default, the playback is not delayed.
Default value: **0**| | iterations | number | Number of times that the animation is played. By default, the animation is played once. The value **-1** indicates that the animation is played for an unlimited number of times.
Default value: **1**| | playMode | [PlayMode](ts-appendix-enums.md#playmode) | Animation playback mode. By default, the animation is played from the beginning after the playback is complete.
Default value: **PlayMode.Normal**| | onFinish | () => void | Callback invoked when the animation playback is complete.| ## Example ```ts // xxx.ets @Entry @Component struct AnimateToExample { @State widthSize: number = 200 @State heightSize: number = 100 private flag: boolean = true build() { Column() { Button('click me') .width(this.widthSize) .height(this.heightSize) .backgroundColor(0x317aff) .onClick((event: ClickEvent) => { // Animation configuration for the width and height attributes of the