1# native_animate.h
2
3
4## Overview
5
6Defines a set of animation APIs of ArkUI on the native side.
7
8**Library**: libace_ndk.z.so
9
10**System capability**: SystemCapability.ArkUI.ArkUI.Full
11
12**Since**: 12
13
14**Related module**: [ArkUI_NativeModule](_ark_u_i___native_module.md)
15
16
17## Summary
18
19
20### Structs
21
22| Name| Description|
23| -------- | -------- |
24| struct  [ArkUI_ExpectedFrameRateRange](_ark_u_i___expected_frame_rate_range.md) | Defines a struct for the expected frame rate range of the animation. |
25| struct  [ArkUI_AnimateCompleteCallback](_ark_u_i___animate_complete_callback.md) | Defines a struct for the callback type for when the animation playback is complete. |
26| struct  [ArkUI_NativeAnimateAPI_1](_ark_u_i___native_animate_a_p_i__1.md) | Defines a struct for the animation APIs of ArkUI on the native side. |
27
28
29### Types
30
31| Name| Description|
32| -------- | -------- |
33| typedef struct [ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) [ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) | Defines a struct for the animation configuration. |
34| typedef struct ArkUI_Curve \* [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) | Defines a struct for the pointer to an interpolation curve. |
35| typedef struct [ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) [ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) | Defines the keyframe animation parameter object. |
36| typedef struct [ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) [ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) | Defines the animator parameter object. |
37| typedef struct ArkUI_Animator \* [ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) | Defines the pointer to an animator object. |
38| typedef struct [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) | Defines the transition effect. |
39
40
41### Callback
42
43| Name| Description|
44| -------- | -------- |
45| [ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \* [OH_ArkUI_AnimateOption_Create](_ark_u_i___native_module.md#oh_arkui_animateoption_create) () | Creates an animation configuration. |
46| void [OH_ArkUI_AnimateOption_Dispose](_ark_u_i___native_module.md#oh_arkui_animateoption_dispose) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Disposes of an animation configuration. |
47| int32_t [OH_ArkUI_AnimateOption_GetDuration](_ark_u_i___native_module.md#oh_arkui_animateoption_getduration) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the animation duration, in milliseconds. |
48| float [OH_ArkUI_AnimateOption_GetTempo](_ark_u_i___native_module.md#oh_arkui_animateoption_gettempo) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the playback speed of an animation. |
49| [ArkUI_AnimationCurve](_ark_u_i___native_module.md#arkui_animationcurve) [OH_ArkUI_AnimateOption_GetCurve](_ark_u_i___native_module.md#oh_arkui_animateoption_getcurve) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains an animation curve. |
50| int32_t [OH_ArkUI_AnimateOption_GetDelay](_ark_u_i___native_module.md#oh_arkui_animateoption_getdelay) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the animation delay, in milliseconds. |
51| int32_t [OH_ArkUI_AnimateOption_GetIterations](_ark_u_i___native_module.md#oh_arkui_animateoption_getiterations) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the number of times that an animation is played. |
52| [ArkUI_AnimationPlayMode](_ark_u_i___native_module.md#arkui_animationplaymode) [OH_ArkUI_AnimateOption_GetPlayMode](_ark_u_i___native_module.md#oh_arkui_animateoption_getplaymode) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the playback mode of an animation. |
53| [ArkUI_ExpectedFrameRateRange](_ark_u_i___expected_frame_rate_range.md) \* [OH_ArkUI_AnimateOption_GetExpectedFrameRateRange](_ark_u_i___native_module.md#oh_arkui_animateoption_getexpectedframeraterange) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the expected frame rate range of an animation. |
54| void [OH_ArkUI_AnimateOption_SetDuration](_ark_u_i___native_module.md#oh_arkui_animateoption_setduration) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, int32_t value) | Sets the animation duration. |
55| void [OH_ArkUI_AnimateOption_SetTempo](_ark_u_i___native_module.md#oh_arkui_animateoption_settempo) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, float value) | Sets the playback speed of an animation. |
56| void [OH_ArkUI_AnimateOption_SetCurve](_ark_u_i___native_module.md#oh_arkui_animateoption_setcurve) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, [ArkUI_AnimationCurve](_ark_u_i___native_module.md#arkui_animationcurve) value) | Animation curve. |
57| void [OH_ArkUI_AnimateOption_SetDelay](_ark_u_i___native_module.md#oh_arkui_animateoption_setdelay) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, int32_t value) | Sets the animation delay. |
58| void [OH_ArkUI_AnimateOption_SetIterations](_ark_u_i___native_module.md#oh_arkui_animateoption_setiterations) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, int32_t value) | Sets the number of times that an animation is played. |
59| void [OH_ArkUI_AnimateOption_SetPlayMode](_ark_u_i___native_module.md#oh_arkui_animateoption_setplaymode) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, [ArkUI_AnimationPlayMode](_ark_u_i___native_module.md#arkui_animationplaymode) value) | Sets the playback mode for an animation. |
60| void [OH_ArkUI_AnimateOption_SetExpectedFrameRateRange](_ark_u_i___native_module.md#oh_arkui_animateoption_setexpectedframeraterange) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, [ArkUI_ExpectedFrameRateRange](_ark_u_i___expected_frame_rate_range.md) \*value) | Defines a struct for the expected frame rate range of the animation. |
61| void [OH_ArkUI_AnimateOption_SetICurve](_ark_u_i___native_module.md#oh_arkui_animateoption_seticurve) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option, [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) value) | Sets the animation curve for an animation. |
62| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_AnimateOption_GetICurve](_ark_u_i___native_module.md#oh_arkui_animateoption_geticurve) ([ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*option) | Obtains the animation curve of an animation. |
63| [ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \* [OH_ArkUI_KeyframeAnimateOption_Create](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_create) (int32_t size) | Obtains the keyframe animation parameters. |
64| void [OH_ArkUI_KeyframeAnimateOption_Dispose](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_dispose) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option) | Disposes of a keyframe animation parameter object. |
65| int32_t [OH_ArkUI_KeyframeAnimateOption_SetDelay](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_setdelay) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, int32_t value) | Sets the overall delay of a keyframe animation, in milliseconds. By default, the keyframe animation is played without delay. |
66| int32_t [OH_ArkUI_KeyframeAnimateOption_SetIterations](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_setiterations) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, int32_t value) | Sets the number of times that the keyframe 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. The value **0** indicates that there is no animation. |
67| int32_t [OH_ArkUI_KeyframeAnimateOption_RegisterOnFinishCallback](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_registeronfinishcallback) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, void \*userData, void(\*onFinish)(void \*userData)) | Sets the callback invoked when the keyframe animation playback is complete. This API is called after the keyframe animation has played for the specified number of times. |
68| int32_t [OH_ArkUI_KeyframeAnimateOption_SetDuration](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_setduration) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, int32_t value, int32_t index) | Sets the duration of a keyframe animation, in milliseconds. |
69| int32_t [OH_ArkUI_KeyframeAnimateOption_SetCurve](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_setcurve) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) value, int32_t index) | Sets the animation curve for a specific keyframe in a keyframe animation. |
70| int32_t [OH_ArkUI_KeyframeAnimateOption_RegisterOnEventCallback](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_registeroneventcallback) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, void \*userData, void(\*event)(void \*userData), int32_t index) | Sets the closure function of the state at the time of the keyframe, that is, the state to be reached at the time of the keyframe. |
71| int32_t [OH_ArkUI_KeyframeAnimateOption_GetDelay](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_getdelay) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option) | Obtains the overall delay of a keyframe animation |
72| int32_t [OH_ArkUI_KeyframeAnimateOption_GetIterations](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_getiterations) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option) | Obtains the number of times that a keyframe animation is played. |
73| int32_t [OH_ArkUI_KeyframeAnimateOption_GetDuration](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_getduration) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, int32_t index) | Obtains the duration of a specific state in a keyframe animation. |
74| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_KeyframeAnimateOption_GetCurve](_ark_u_i___native_module.md#oh_arkui_keyframeanimateoption_getcurve) ([ArkUI_KeyframeAnimateOption](_ark_u_i___native_module.md#arkui_keyframeanimateoption) \*option, int32_t index) | Obtains the animation curve of a specific state in a keyframe animation. |
75| [ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \* [OH_ArkUI_AnimatorOption_Create](_ark_u_i___native_module.md#oh_arkui_animatoroption_create) (int32_t keyframeSize) | Creates an **AnimatorOption** object. |
76| void [OH_ArkUI_AnimatorOption_Dispose](_ark_u_i___native_module.md#oh_arkui_animatoroption_dispose) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Disposes of an **AnimatorOption** object. |
77| int32_t [OH_ArkUI_AnimatorOption_SetDuration](_ark_u_i___native_module.md#oh_arkui_animatoroption_setduration) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t value) | Sets the duration of an animation, in milliseconds. |
78| int32_t [OH_ArkUI_AnimatorOption_SetDelay](_ark_u_i___native_module.md#oh_arkui_animatoroption_setdelay) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t value) | Sets the delay of animation playback, in milliseconds. |
79| int32_t [OH_ArkUI_AnimatorOption_SetIterations](_ark_u_i___native_module.md#oh_arkui_animatoroption_setiterations) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t value) | Sets the number of times that an animation is played. The value **0** means not to play the animation, and **-1** means to play the animation for an unlimited number of times. |
80| int32_t [OH_ArkUI_AnimatorOption_SetFill](_ark_u_i___native_module.md#oh_arkui_animatoroption_setfill) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, [ArkUI_AnimationFill](_ark_u_i___native_module.md#arkui_animationfill) value) | Sets whether the animator animation is restored to the initial state after being executed. |
81| int32_t [OH_ArkUI_AnimatorOption_SetDirection](_ark_u_i___native_module.md#oh_arkui_animatoroption_setdirection) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, [ArkUI_AnimationDirection](_ark_u_i___native_module.md#arkui_animationdirection) value) | Set the playback direction. |
82| int32_t [OH_ArkUI_AnimatorOption_SetCurve](_ark_u_i___native_module.md#oh_arkui_animatoroption_setcurve) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) value) | Sets the interpolation curve for the animation of an animator. |
83| int32_t [OH_ArkUI_AnimatorOption_SetBegin](_ark_u_i___native_module.md#oh_arkui_animatoroption_setbegin) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, float value) | Sets the interpolation start point of an animation. |
84| int32_t [OH_ArkUI_AnimatorOption_SetEnd](_ark_u_i___native_module.md#oh_arkui_animatoroption_setend) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, float value) | Sets the interpolation end point for the animation of an animator. |
85| int32_t [OH_ArkUI_AnimatorOption_SetExpectedFrameRateRange](_ark_u_i___native_module.md#oh_arkui_animatoroption_setexpectedframeraterange) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, [ArkUI_ExpectedFrameRateRange](_ark_u_i___expected_frame_rate_range.md) \*value) | Sets the expected frame rate range of an animation. |
86| int32_t [OH_ArkUI_AnimatorOption_SetKeyframe](_ark_u_i___native_module.md#oh_arkui_animatoroption_setkeyframe) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, float time, float value, int32_t index) | Sets the keyframe parameters of an animation. |
87| int32_t [OH_ArkUI_AnimatorOption_SetKeyframeCurve](_ark_u_i___native_module.md#oh_arkui_animatoroption_setkeyframecurve) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) value, int32_t index) | Sets the keyframe curve type for the animation of an animator. |
88| int32_t [OH_ArkUI_AnimatorOption_GetDuration](_ark_u_i___native_module.md#oh_arkui_animatoroption_getduration) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the duration for playing an animation. |
89| int32_t [OH_ArkUI_AnimatorOption_GetDelay](_ark_u_i___native_module.md#oh_arkui_animatoroption_getdelay) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the delay for playing an animation. |
90| int32_t [OH_ArkUI_AnimatorOption_GetIterations](_ark_u_i___native_module.md#oh_arkui_animatoroption_getiterations) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the number of times that an animation is played. |
91| [ArkUI_AnimationFill](_ark_u_i___native_module.md#arkui_animationfill) [OH_ArkUI_AnimatorOption_GetFill](_ark_u_i___native_module.md#oh_arkui_animatoroption_getfill) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains whether the animator animation is restored to the initial state after being executed. |
92| [ArkUI_AnimationDirection](_ark_u_i___native_module.md#arkui_animationdirection) [OH_ArkUI_AnimatorOption_GetDirection](_ark_u_i___native_module.md#oh_arkui_animatoroption_getdirection) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the playback direction of an animation. |
93| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_AnimatorOption_GetCurve](_ark_u_i___native_module.md#oh_arkui_animatoroption_getcurve) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the interpolation curve of the animation of an animator. |
94| float [OH_ArkUI_AnimatorOption_GetBegin](_ark_u_i___native_module.md#oh_arkui_animatoroption_getbegin) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the interpolation start point of an animation. |
95| float [OH_ArkUI_AnimatorOption_GetEnd](_ark_u_i___native_module.md#oh_arkui_animatoroption_getend) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the interpolation end point of an animation. |
96| [ArkUI_ExpectedFrameRateRange](_ark_u_i___expected_frame_rate_range.md) \* [OH_ArkUI_AnimatorOption_GetExpectedFrameRateRange](_ark_u_i___native_module.md#oh_arkui_animatoroption_getexpectedframeraterange) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Obtains the expected frame rate range of an animation. |
97| float [OH_ArkUI_AnimatorOption_GetKeyframeTime](_ark_u_i___native_module.md#oh_arkui_animatoroption_getkeyframetime) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t index) | Obtains the keyframe time of an animation. |
98| float [OH_ArkUI_AnimatorOption_GetKeyframeValue](_ark_u_i___native_module.md#oh_arkui_animatoroption_getkeyframevalue) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t index) | Obtains the keyframe value of an animation. |
99| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_AnimatorOption_GetKeyframeCurve](_ark_u_i___native_module.md#oh_arkui_animatoroption_getkeyframecurve) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, int32_t index) | Obtains the interpolation curve for a keyframe in the animation of an animator. |
100| void \* [OH_ArkUI_AnimatorEvent_GetUserData](_ark_u_i___native_module.md#oh_arkui_animatorevent_getuserdata) (ArkUI_AnimatorEvent \*event) | Obtains the custom object in an animation event object. |
101| void \* [OH_ArkUI_AnimatorOnFrameEvent_GetUserData](_ark_u_i___native_module.md#oh_arkui_animatoronframeevent_getuserdata) (ArkUI_AnimatorOnFrameEvent \*event) | Obtains the custom object in an animation event object. |
102| float [OH_ArkUI_AnimatorOnFrameEvent_GetValue](_ark_u_i___native_module.md#oh_arkui_animatoronframeevent_getvalue) (ArkUI_AnimatorOnFrameEvent \*event) | Obtains the current progress in an animation event object. |
103| int32_t [OH_ArkUI_AnimatorOption_RegisterOnFrameCallback](_ark_u_i___native_module.md#oh_arkui_animatoroption_registeronframecallback) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, void \*userData, void(\*callback)(ArkUI_AnimatorOnFrameEvent \*event)) | Sets the callback invoked when the animator receives a frame. |
104| int32_t [OH_ArkUI_AnimatorOption_RegisterOnFinishCallback](_ark_u_i___native_module.md#oh_arkui_animatoroption_registeronfinishcallback) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, void \*userData, void(\*callback)(ArkUI_AnimatorEvent \*event)) | Sets the callback invoked when the animation playback is complete. |
105| int32_t [OH_ArkUI_AnimatorOption_RegisterOnCancelCallback](_ark_u_i___native_module.md#oh_arkui_animatoroption_registeroncancelcallback) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, void \*userData, void(\*callback)(ArkUI_AnimatorEvent \*event)) | Sets the callback invoked when the animation playback is canceled. |
106| int32_t [OH_ArkUI_AnimatorOption_RegisterOnRepeatCallback](_ark_u_i___native_module.md#oh_arkui_animatoroption_registeronrepeatcallback) ([ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option, void \*userData, void(\*callback)(ArkUI_AnimatorEvent \*event)) | Sets the callback invoked when the animation playback is repeated. |
107| int32_t [OH_ArkUI_Animator_ResetAnimatorOption](_ark_u_i___native_module.md#oh_arkui_animator_resetanimatoroption) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator, [ArkUI_AnimatorOption](_ark_u_i___native_module.md#arkui_animatoroption) \*option) | Resets an animator configuration. |
108| int32_t [OH_ArkUI_Animator_Play](_ark_u_i___native_module.md#oh_arkui_animator_play) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator) | Starts the animation of an animator. |
109| int32_t [OH_ArkUI_Animator_Finish](_ark_u_i___native_module.md#oh_arkui_animator_finish) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator) | Ends the animation of an animator. |
110| int32_t [OH_ArkUI_Animator_Pause](_ark_u_i___native_module.md#oh_arkui_animator_pause) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator) | Pauses the animation of an animator. |
111| int32_t [OH_ArkUI_Animator_Cancel](_ark_u_i___native_module.md#oh_arkui_animator_cancel) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator) | Cancels the animation of an animator. |
112| int32_t [OH_ArkUI_Animator_Reverse](_ark_u_i___native_module.md#oh_arkui_animator_reverse) ([ArkUI_AnimatorHandle](_ark_u_i___native_module.md#arkui_animatorhandle) animator) | Plays this animation in reverse order. |
113| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateCurveByType](_ark_u_i___native_module.md#oh_arkui_curve_createcurvebytype) ([ArkUI_AnimationCurve](_ark_u_i___native_module.md#arkui_animationcurve) curve) | Implements initialization for the interpolation curve, which is used to create an interpolation curve based on the input parameter. |
114| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateStepsCurve](_ark_u_i___native_module.md#oh_arkui_curve_createstepscurve) (int32_t count, bool end) | Creates a step curve. |
115| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateCubicBezierCurve](_ark_u_i___native_module.md#oh_arkui_curve_createcubicbeziercurve) (float x1, float y1, float x2, float y2) | Creates a cubic Bezier curve. |
116| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateSpringCurve](_ark_u_i___native_module.md#oh_arkui_curve_createspringcurve) (float velocity, float mass, float stiffness, float damping) | Creates a spring curve. The curve shape is subject to the spring parameters, and the animation duration is subject to the **duration** parameter in **animation** and **animateTo**. |
117| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateSpringMotion](_ark_u_i___native_module.md#oh_arkui_curve_createspringmotion) (float response, float dampingFraction, float overlapDuration) | Creates a spring animation curve. If multiple spring animations are applied to the same attribute of an object, each animation replaces their predecessor and inherits the velocity. |
118| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateResponsiveSpringMotion](_ark_u_i___native_module.md#oh_arkui_curve_createresponsivespringmotion) (float response, float dampingFraction, float overlapDuration) | Creates a responsive spring animation curve. It is a special case of **springMotion**, with the only difference in the default values. It can be used together with **springMotion**. |
119| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateInterpolatingSpring](_ark_u_i___native_module.md#oh_arkui_curve_createinterpolatingspring) (float velocity, float mass, float stiffness, float damping) | Creates an interpolating spring curve animated from 0 to 1. The actual animation value is calculated based on the curve. |
120| [ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) [OH_ArkUI_Curve_CreateCustomCurve](_ark_u_i___native_module.md#oh_arkui_curve_createcustomcurve) (void \*userData, float(\*interpolate)(float fraction, void \*userdata)) | Creates a custom curve. |
121| void [OH_ArkUI_Curve_DisposeCurve](_ark_u_i___native_module.md#oh_arkui_curve_disposecurve) ([ArkUI_CurveHandle](_ark_u_i___native_module.md#arkui_curvehandle) curveHandle) | Disposes of a custom curve. |
122| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateOpacityTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createopacitytransitioneffect) (float opacity) | Creates an opacity object for component transition. |
123| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateTranslationTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createtranslationtransitioneffect) ([ArkUI_TranslationOptions](_ark_u_i___translation_options.md) \*translate) | Creates a translation object for component transition. |
124| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateScaleTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createscaletransitioneffect) ([ArkUI_ScaleOptions](_ark_u_i___scale_options.md) \*scale) | Creates a scaling object for component transition. |
125| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateRotationTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createrotationtransitioneffect) ([ArkUI_RotationOptions](_ark_u_i___rotation_options.md) \*rotate) | Creates a rotation object for component transition. |
126| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateMovementTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createmovementtransitioneffect) ([ArkUI_TransitionEdge](_ark_u_i___native_module.md#arkui_transitionedge) move) | Creates a movement object for component transition. |
127| [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \* [OH_ArkUI_CreateAsymmetricTransitionEffect](_ark_u_i___native_module.md#oh_arkui_createasymmetrictransitioneffect) ([ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*appear, [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*disappear) | Creates an asymmetric transition effect. |
128| void [OH_ArkUI_TransitionEffect_Dispose](_ark_u_i___native_module.md#oh_arkui_transitioneffect_dispose) ([ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*option) | Disposes of a transition effect. |
129| int32_t [OH_ArkUI_TransitionEffect_Combine](_ark_u_i___native_module.md#oh_arkui_transitioneffect_combine) ([ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*option, [ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*combine) | Sets a combination of transition effects. |
130| int32_t [OH_ArkUI_TransitionEffect_SetAnimation](_ark_u_i___native_module.md#oh_arkui_transitioneffect_setanimation) ([ArkUI_TransitionEffect](_ark_u_i___native_module.md#arkui_transitioneffect) \*option, [ArkUI_AnimateOption](_ark_u_i___native_module.md#arkui_animateoption) \*animation) | Sets transition effect animation settings. |
131