1# native_animate.h 2<!--Kit: ArkUI--> 3<!--Subsystem: ArkUI--> 4<!--Owner: @CCFFWW--> 5<!--Designer: @yangfan229--> 6<!--Tester: @lxl007--> 7<!--Adviser: @HelloCrease--> 8 9## 概述 10 11提供ArkUI在Native侧的动画接口定义集合。 12 13**引用文件:** <arkui/native_animate.h> 14 15**库:** libace_ndk.z.so 16 17**系统能力:** SystemCapability.ArkUI.ArkUI.Full 18 19**起始版本:** 12 20 21**相关模块:** [ArkUI_NativeModule](capi-arkui-nativemodule.md) 22 23## 汇总 24 25### 结构体 26 27| 名称 | typedef关键字 | 描述 | 28| -- | -- | -- | 29| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md) | ArkUI_ExpectedFrameRateRange | 设置动画的期望帧率。 | 30| [ArkUI_AnimateCompleteCallback](capi-arkui-nativemodule-arkui-animatecompletecallback.md) | ArkUI_AnimateCompleteCallback | 动画播放完成回调类型。 | 31| [ArkUI_NativeAnimateAPI_1](capi-arkui-nativemodule-arkui-nativeanimateapi-1.md) | ArkUI_NativeAnimateAPI_1 | ArkUI提供的Native侧动画接口集合。 | 32| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md) | ArkUI_AnimateOption | 设置动画效果相关参数。 | 33| [ArkUI_Curve](capi-arkui-nativemodule-arkui-curve.md) | ArkUI_Curve | 提供曲线的插值对象定义。 | 34| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | ArkUI_Curve* | 定义曲线的插值对象指针定义。 | 35| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md) | ArkUI_KeyframeAnimateOption | 定义关键帧动画参数对象。 | 36| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md) | ArkUI_AnimatorOption | 定义animator动画参数对象。 | 37| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) | ArkUI_Animator* | 定义animator动画对象指针。 | 38| [ArkUI_AnimatorEvent](capi-arkui-nativemodule-arkui-animatorevent.md) | ArkUI_AnimatorEvent | 定义animator回调事件对象。 | 39| [ArkUI_AnimatorOnFrameEvent](capi-arkui-nativemodule-arkui-animatoronframeevent.md) | ArkUI_AnimatorOnFrameEvent | 定义animator接收到帧时回调对象。 | 40| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md) | ArkUI_TransitionEffect | 定义transition属性配置转场参数对象。 | 41 42### 函数 43 44| 名称 | 描述 | 45| -- | -- | 46| [ArkUI_AnimateOption* OH_ArkUI_AnimateOption_Create()](#oh_arkui_animateoption_create) | 创建动画效果参数。 | 47| [void OH_ArkUI_AnimateOption_Dispose(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_dispose) | 销毁动画效果参数指针。 | 48| [uint32_t OH_ArkUI_AnimateOption_GetDuration(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getduration) | 获取动画持续时间,单位为ms(毫秒)。 | 49| [float OH_ArkUI_AnimateOption_GetTempo(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_gettempo) | 获取动画播放速度。 | 50| [ArkUI_AnimationCurve OH_ArkUI_AnimateOption_GetCurve(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getcurve) | 获取动画曲线。 | 51| [int32_t OH_ArkUI_AnimateOption_GetDelay(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getdelay) | 获取动画延迟播放时间,单位为ms(毫秒)。 | 52| [int32_t OH_ArkUI_AnimateOption_GetIterations(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getiterations) | 获取动画播放次数。 | 53| [ArkUI_AnimationPlayMode OH_ArkUI_AnimateOption_GetPlayMode(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getplaymode) | 获取动画播放模式。 | 54| [ArkUI_ExpectedFrameRateRange* OH_ArkUI_AnimateOption_GetExpectedFrameRateRange(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_getexpectedframeraterange) | 获取动画的期望帧率。 | 55| [void OH_ArkUI_AnimateOption_SetDuration(ArkUI_AnimateOption* option, int32_t value)](#oh_arkui_animateoption_setduration) | 设置动画持续时间。 | 56| [void OH_ArkUI_AnimateOption_SetTempo(ArkUI_AnimateOption* option, float value)](#oh_arkui_animateoption_settempo) | 设置动画播放速度。 | 57| [void OH_ArkUI_AnimateOption_SetCurve(ArkUI_AnimateOption* option, ArkUI_AnimationCurve value)](#oh_arkui_animateoption_setcurve) | 设置动画曲线。 | 58| [void OH_ArkUI_AnimateOption_SetDelay(ArkUI_AnimateOption* option, int32_t value)](#oh_arkui_animateoption_setdelay) | 设置动画延迟播放时间。 | 59| [void OH_ArkUI_AnimateOption_SetIterations(ArkUI_AnimateOption* option, int32_t value)](#oh_arkui_animateoption_setiterations) | 设置动画播放次数。 | 60| [void OH_ArkUI_AnimateOption_SetPlayMode(ArkUI_AnimateOption* option, ArkUI_AnimationPlayMode value)](#oh_arkui_animateoption_setplaymode) | 设置动画播放模式。 | 61| [void OH_ArkUI_AnimateOption_SetExpectedFrameRateRange(ArkUI_AnimateOption* option, ArkUI_ExpectedFrameRateRange* value)](#oh_arkui_animateoption_setexpectedframeraterange) | 设置动画的期望帧率。 | 62| [void OH_ArkUI_AnimateOption_SetICurve(ArkUI_AnimateOption* option, ArkUI_CurveHandle value)](#oh_arkui_animateoption_seticurve) | 设置动画的动画曲线。 | 63| [ArkUI_CurveHandle OH_ArkUI_AnimateOption_GetICurve(ArkUI_AnimateOption* option)](#oh_arkui_animateoption_geticurve) | 获取动画的动画曲线。 | 64| [ArkUI_KeyframeAnimateOption* OH_ArkUI_KeyframeAnimateOption_Create(int32_t size)](#oh_arkui_keyframeanimateoption_create) | 获取关键帧动画参数。 | 65| [void OH_ArkUI_KeyframeAnimateOption_Dispose(ArkUI_KeyframeAnimateOption* option)](#oh_arkui_keyframeanimateoption_dispose) | 销毁关键帧动画参数。 | 66| [int32_t OH_ArkUI_KeyframeAnimateOption_SetDelay(ArkUI_KeyframeAnimateOption* option, int32_t value)](#oh_arkui_keyframeanimateoption_setdelay) | 设置关键帧动画的整体延时时间,单位为ms(毫秒),默认不延时播放。 | 67| [int32_t OH_ArkUI_KeyframeAnimateOption_SetIterations(ArkUI_KeyframeAnimateOption* option, int32_t value)](#oh_arkui_keyframeanimateoption_setiterations) | 设置关键帧动画的动画播放次数。默认播放一次,设置为-1时表示无限次播放。设置为0时表示无动画效果。 | 68| [int32_t OH_ArkUI_KeyframeAnimateOption_RegisterOnFinishCallback(ArkUI_KeyframeAnimateOption* option, void* userData, void (\*onFinish)(void* userData))](#oh_arkui_keyframeanimateoption_registeronfinishcallback) | 设置关键帧动画播放完成回调。当keyframe动画所有次数播放完成后调用。 | 69| [int32_t OH_ArkUI_KeyframeAnimateOption_SetExpectedFrameRate(ArkUI_KeyframeAnimateOption* option, ArkUI_ExpectedFrameRateRange* frameRate)](#oh_arkui_keyframeanimateoption_setexpectedframerate) | 设置关键帧动画期望帧率。 | 70| [int32_t OH_ArkUI_KeyframeAnimateOption_SetDuration(ArkUI_KeyframeAnimateOption* option, int32_t value, int32_t index)](#oh_arkui_keyframeanimateoption_setduration) | 设置关键帧动画某段关键帧动画的持续时间,单位为毫秒。 | 71| [int32_t OH_ArkUI_KeyframeAnimateOption_SetCurve(ArkUI_KeyframeAnimateOption* option, ArkUI_CurveHandle value, int32_t index)](#oh_arkui_keyframeanimateoption_setcurve) | 设置关键帧动画某段关键帧使用的动画曲线。 | 72| [int32_t OH_ArkUI_KeyframeAnimateOption_RegisterOnEventCallback(ArkUI_KeyframeAnimateOption* option, void* userData, void (\*event)(void* userData), int32_t index)](#oh_arkui_keyframeanimateoption_registeroneventcallback) | 设置关键帧时刻状态的闭包函数,即在该关键帧时刻要达到的状态。 | 73| [int32_t OH_ArkUI_KeyframeAnimateOption_GetDelay(ArkUI_KeyframeAnimateOption* option)](#oh_arkui_keyframeanimateoption_getdelay) | 获取关键帧整体延时时间。 | 74| [int32_t OH_ArkUI_KeyframeAnimateOption_GetIterations(ArkUI_KeyframeAnimateOption* option)](#oh_arkui_keyframeanimateoption_getiterations) | 获取关键帧动画播放次数。 | 75| [ArkUI_ExpectedFrameRateRange* OH_ArkUI_KeyframeAnimateOption_GetExpectedFrameRate(ArkUI_KeyframeAnimateOption* option)](#oh_arkui_keyframeanimateoption_getexpectedframerate) | 获取关键帧动画参数的期望帧率。 | 76| [int32_t OH_ArkUI_KeyframeAnimateOption_GetDuration(ArkUI_KeyframeAnimateOption* option, int32_t index)](#oh_arkui_keyframeanimateoption_getduration) | 获取关键帧动画某段状态持续时间。 | 77| [ArkUI_CurveHandle OH_ArkUI_KeyframeAnimateOption_GetCurve(ArkUI_KeyframeAnimateOption* option, int32_t index)](#oh_arkui_keyframeanimateoption_getcurve) | 获取关键帧动画某段状态动画曲线。 | 78| [ArkUI_AnimatorOption* OH_ArkUI_AnimatorOption_Create(int32_t keyframeSize)](#oh_arkui_animatoroption_create) | 创建animator动画对象参数。 | 79| [void OH_ArkUI_AnimatorOption_Dispose(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_dispose) | 销毁animator动画对象参数。 | 80| [int32_t OH_ArkUI_AnimatorOption_SetDuration(ArkUI_AnimatorOption* option, int32_t value)](#oh_arkui_animatoroption_setduration) | 设置animator动画播放的时长,单位毫秒。 | 81| [int32_t OH_ArkUI_AnimatorOption_SetDelay(ArkUI_AnimatorOption* option, int32_t value)](#oh_arkui_animatoroption_setdelay) | 设置animator动画延时播放时长,单位毫秒。 | 82| [int32_t OH_ArkUI_AnimatorOption_SetIterations(ArkUI_AnimatorOption* option, int32_t value)](#oh_arkui_animatoroption_setiterations) | 设置animator动画播放次数。设置为0时不播放,设置为-1时无限次播放。 | 83| [int32_t OH_ArkUI_AnimatorOption_SetFill(ArkUI_AnimatorOption* option, ArkUI_AnimationFillMode value)](#oh_arkui_animatoroption_setfill) | 设置animator动画执行后是否恢复到初始状态。 | 84| [int32_t OH_ArkUI_AnimatorOption_SetDirection(ArkUI_AnimatorOption* option, ArkUI_AnimationDirection value)](#oh_arkui_animatoroption_setdirection) | 设置animator动画播放方向。 | 85| [int32_t OH_ArkUI_AnimatorOption_SetCurve(ArkUI_AnimatorOption* option, ArkUI_CurveHandle value)](#oh_arkui_animatoroption_setcurve) | 设置animator动画插值曲线。 | 86| [int32_t OH_ArkUI_AnimatorOption_SetBegin(ArkUI_AnimatorOption* option, float value)](#oh_arkui_animatoroption_setbegin) | 设置animator动画插值起点。 | 87| [int32_t OH_ArkUI_AnimatorOption_SetEnd(ArkUI_AnimatorOption* option, float value)](#oh_arkui_animatoroption_setend) | 设置animator动画插值终点。 | 88| [int32_t OH_ArkUI_AnimatorOption_SetExpectedFrameRateRange(ArkUI_AnimatorOption* option, ArkUI_ExpectedFrameRateRange* value)](#oh_arkui_animatoroption_setexpectedframeraterange) | 设置animator动画期望的帧率范围。 | 89| [int32_t OH_ArkUI_AnimatorOption_SetKeyframe(ArkUI_AnimatorOption* option, float time, float value, int32_t index)](#oh_arkui_animatoroption_setkeyframe) | 设置animator动画关键帧参数。 | 90| [int32_t OH_ArkUI_AnimatorOption_SetKeyframeCurve(ArkUI_AnimatorOption* option, ArkUI_CurveHandle value, int32_t index)](#oh_arkui_animatoroption_setkeyframecurve) | 设置animator动画关键帧曲线类型。 | 91| [int32_t OH_ArkUI_AnimatorOption_GetDuration(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getduration) | 获取animator动画播放的时长。 | 92| [int32_t OH_ArkUI_AnimatorOption_GetDelay(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getdelay) | 获取animator动画延时播放时长。 | 93| [int32_t OH_ArkUI_AnimatorOption_GetIterations(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getiterations) | 获取animator动画播放次数。 | 94| [ArkUI_AnimationFillMode OH_ArkUI_AnimatorOption_GetFill(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getfill) | 获取animator动画执行后是否恢复到初始状态。 | 95| [ArkUI_AnimationDirection OH_ArkUI_AnimatorOption_GetDirection(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getdirection) | 获取animator动画播放方向。 | 96| [ArkUI_CurveHandle OH_ArkUI_AnimatorOption_GetCurve(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getcurve) | 获取animator动画插值曲线。 | 97| [float OH_ArkUI_AnimatorOption_GetBegin(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getbegin) | 获取animator动画插值起点。 | 98| [float OH_ArkUI_AnimatorOption_GetEnd(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getend) | 获取animator动画插值终点。 | 99| [ArkUI_ExpectedFrameRateRange* OH_ArkUI_AnimatorOption_GetExpectedFrameRateRange(ArkUI_AnimatorOption* option)](#oh_arkui_animatoroption_getexpectedframeraterange) | 获取animator动画期望的帧率范围。 | 100| [float OH_ArkUI_AnimatorOption_GetKeyframeTime(ArkUI_AnimatorOption* option, int32_t index)](#oh_arkui_animatoroption_getkeyframetime) | 获取animator动画关键帧时间。 | 101| [float OH_ArkUI_AnimatorOption_GetKeyframeValue(ArkUI_AnimatorOption* option, int32_t index)](#oh_arkui_animatoroption_getkeyframevalue) | 获取animator动画关键帧数值。 | 102| [ArkUI_CurveHandle OH_ArkUI_AnimatorOption_GetKeyframeCurve(ArkUI_AnimatorOption* option, int32_t index)](#oh_arkui_animatoroption_getkeyframecurve) | 获取animator动画关键帧动画插值曲线。 | 103| [void* OH_ArkUI_AnimatorEvent_GetUserData(ArkUI_AnimatorEvent* event)](#oh_arkui_animatorevent_getuserdata) | 获取动画事件对象中的用户自定义对象。 | 104| [void* OH_ArkUI_AnimatorOnFrameEvent_GetUserData(ArkUI_AnimatorOnFrameEvent* event)](#oh_arkui_animatoronframeevent_getuserdata) | 获取动画事件对象中的用户自定义对象。 | 105| [float OH_ArkUI_AnimatorOnFrameEvent_GetValue(ArkUI_AnimatorOnFrameEvent* event)](#oh_arkui_animatoronframeevent_getvalue) | 获取动画事件对象中的当前进度。 | 106| [int32_t OH_ArkUI_AnimatorOption_RegisterOnFrameCallback(ArkUI_AnimatorOption* option, void* userData, void (\*callback)(ArkUI_AnimatorOnFrameEvent* event))](#oh_arkui_animatoroption_registeronframecallback) | 设置animator动画接收到帧时回调。 | 107| [int32_t OH_ArkUI_AnimatorOption_RegisterOnFinishCallback(ArkUI_AnimatorOption* option, void* userData, void (\*callback)(ArkUI_AnimatorEvent* event))](#oh_arkui_animatoroption_registeronfinishcallback) | 设置animator动画完成时回调。 | 108| [int32_t OH_ArkUI_AnimatorOption_RegisterOnCancelCallback(ArkUI_AnimatorOption* option, void* userData, void (\*callback)(ArkUI_AnimatorEvent* event))](#oh_arkui_animatoroption_registeroncancelcallback) | 设置animator动画被取消时回调。 | 109| [int32_t OH_ArkUI_AnimatorOption_RegisterOnRepeatCallback(ArkUI_AnimatorOption* option, void* userData, void (\*callback)(ArkUI_AnimatorEvent* event))](#oh_arkui_animatoroption_registeronrepeatcallback) | 设置animator动画重复时回调。 | 110| [int32_t OH_ArkUI_Animator_ResetAnimatorOption(ArkUI_AnimatorHandle animatorHandle, ArkUI_AnimatorOption* option)](#oh_arkui_animator_resetanimatoroption) | 更新animator动画。 | 111| [int32_t OH_ArkUI_Animator_Play(ArkUI_AnimatorHandle animatorHandle)](#oh_arkui_animator_play) | 启动animator动画。 | 112| [int32_t OH_ArkUI_Animator_Finish(ArkUI_AnimatorHandle animatorHandle)](#oh_arkui_animator_finish) | 结束animator动画。 | 113| [int32_t OH_ArkUI_Animator_Pause(ArkUI_AnimatorHandle animatorHandle)](#oh_arkui_animator_pause) | 暂停animator动画。 | 114| [int32_t OH_ArkUI_Animator_Cancel(ArkUI_AnimatorHandle animatorHandle)](#oh_arkui_animator_cancel) | 取消animator动画。 | 115| [int32_t OH_ArkUI_Animator_Reverse(ArkUI_AnimatorHandle animatorHandle)](#oh_arkui_animator_reverse) | 以相反的顺序播放animator动画。 | 116| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateCurveByType(ArkUI_AnimationCurve curve)](#oh_arkui_curve_createcurvebytype) | 插值曲线的初始化函数,可以根据入参创建一个插值曲线对象。 | 117| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateStepsCurve(int32_t count, bool end)](#oh_arkui_curve_createstepscurve) | 构造阶梯曲线对象。 | 118| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateCubicBezierCurve(float x1, float y1, float x2, float y2)](#oh_arkui_curve_createcubicbeziercurve) | 构造三阶贝塞尔曲线对象。 | 119| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateSpringCurve(float velocity, float mass, float stiffness, float damping)](#oh_arkui_curve_createspringcurve) | 构造弹簧曲线对象,曲线形状由弹簧参数决定,动画时长受animation、animateTo中的duration参数控制。 | 120| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateSpringMotion(float response, float dampingFraction, float overlapDuration)](#oh_arkui_curve_createspringmotion) | 构造弹性动画曲线对象。如果对同一对象的同一属性进行多个弹性动画,每个动画会替换掉前一个动画,并继承之前的速度。 | 121| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateResponsiveSpringMotion(float response, float dampingFraction, float overlapDuration)](#oh_arkui_curve_createresponsivespringmotion) | 构造弹性跟手动画曲线对象,是springMotion的一种特例,仅默认参数不同,可与springMotion混合使用。 | 122| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateInterpolatingSpring(float velocity, float mass, float stiffness, float damping)](#oh_arkui_curve_createinterpolatingspring) | 构造插值器弹簧曲线对象,生成一条从0到1的动画曲线,实际动画值根据曲线进行插值计算。 | 123| [ArkUI_CurveHandle OH_ArkUI_Curve_CreateCustomCurve(void* userData, float (\*interpolate)(float fraction, void* userdata))](#oh_arkui_curve_createcustomcurve) | 构造自定义曲线对象。 | 124| [void OH_ArkUI_Curve_DisposeCurve(ArkUI_CurveHandle curveHandle)](#oh_arkui_curve_disposecurve) | 销毁自定义曲线对象。 | 125| [ArkUI_TransitionEffect* OH_ArkUI_CreateOpacityTransitionEffect(float opacity)](#oh_arkui_createopacitytransitioneffect) | 创建组件转场时的透明度效果对象。 | 126| [ArkUI_TransitionEffect* OH_ArkUI_CreateTranslationTransitionEffect(ArkUI_TranslationOptions* translate)](#oh_arkui_createtranslationtransitioneffect) | 创建组件转场时的平移效果对象。 | 127| [ArkUI_TransitionEffect* OH_ArkUI_CreateScaleTransitionEffect(ArkUI_ScaleOptions* scale)](#oh_arkui_createscaletransitioneffect) | 创建组件转场时的缩放效果对象。 | 128| [ArkUI_TransitionEffect* OH_ArkUI_CreateRotationTransitionEffect(ArkUI_RotationOptions* rotate)](#oh_arkui_createrotationtransitioneffect) | 创建组件转场时的旋转效果对象。 | 129| [ArkUI_TransitionEffect* OH_ArkUI_CreateMovementTransitionEffect(ArkUI_TransitionEdge edge)](#oh_arkui_createmovementtransitioneffect) | 创建组件平移效果对象。 | 130| [ArkUI_TransitionEffect* OH_ArkUI_CreateAsymmetricTransitionEffect(ArkUI_TransitionEffect* appear, ArkUI_TransitionEffect* disappear)](#oh_arkui_createasymmetrictransitioneffect) | 创建非对称的转场效果对象。 | 131| [void OH_ArkUI_TransitionEffect_Dispose(ArkUI_TransitionEffect* effect)](#oh_arkui_transitioneffect_dispose) | 销毁转场效果对象。 | 132| [int32_t OH_ArkUI_TransitionEffect_Combine(ArkUI_TransitionEffect* firstEffect, ArkUI_TransitionEffect* secondEffect)](#oh_arkui_transitioneffect_combine) | 设置转场效果链式组合,以形成包含多种转场效果的TransitionEffect。 | 133| [int32_t OH_ArkUI_TransitionEffect_SetAnimation(ArkUI_TransitionEffect* effect, ArkUI_AnimateOption* animation)](#oh_arkui_transitioneffect_setanimation) | 设置转场效果动画参数。 | 134 135## 函数说明 136 137### OH_ArkUI_AnimateOption_Create() 138 139``` 140ArkUI_AnimateOption* OH_ArkUI_AnimateOption_Create() 141``` 142 143**描述:** 144 145 146创建动画效果参数。 147 148**起始版本:** 12 149 150**返回:** 151 152| 类型 | 说明 | 153|--------------------------| -- | 154| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* | 新的动画效果参数指针。 | 155 156### OH_ArkUI_AnimateOption_Dispose() 157 158``` 159void OH_ArkUI_AnimateOption_Dispose(ArkUI_AnimateOption* option) 160``` 161 162**描述:** 163 164 165销毁动画效果参数指针。 166 167**起始版本:** 12 168 169**参数:** 170 171| 参数项 | 描述 | 172| -- | -- | 173| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 174 175### OH_ArkUI_AnimateOption_GetDuration() 176 177``` 178uint32_t OH_ArkUI_AnimateOption_GetDuration(ArkUI_AnimateOption* option) 179``` 180 181**描述:** 182 183 184获取动画持续时间,单位为ms(毫秒)。 185 186**起始版本:** 12 187 188 189**参数:** 190 191| 参数项 | 描述 | 192| -- | -- | 193| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 194 195**返回:** 196 197| 类型 | 说明 | 198| -- | -- | 199| uint32_t | 持续时间。 | 200 201### OH_ArkUI_AnimateOption_GetTempo() 202 203``` 204float OH_ArkUI_AnimateOption_GetTempo(ArkUI_AnimateOption* option) 205``` 206 207**描述:** 208 209 210获取动画播放速度。 211 212**起始版本:** 12 213 214 215**参数:** 216 217| 参数项 | 描述 | 218| -- | -- | 219| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 220 221**返回:** 222 223| 类型 | 说明 | 224| -- | -- | 225| float | 动画播放速度。 | 226 227### OH_ArkUI_AnimateOption_GetCurve() 228 229``` 230ArkUI_AnimationCurve OH_ArkUI_AnimateOption_GetCurve(ArkUI_AnimateOption* option) 231``` 232 233**描述:** 234 235 236获取动画曲线。 237 238**起始版本:** 12 239 240 241**参数:** 242 243| 参数项 | 描述 | 244| -- | -- | 245| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 246 247**返回:** 248 249| 类型 | 说明 | 250| -- | -- | 251| [ArkUI_AnimationCurve](capi-native-type-h.md#arkui_animationcurve) | 动画曲线。 | 252 253### OH_ArkUI_AnimateOption_GetDelay() 254 255``` 256int32_t OH_ArkUI_AnimateOption_GetDelay(ArkUI_AnimateOption* option) 257``` 258 259**描述:** 260 261 262获取动画延迟播放时间,单位为ms(毫秒)。 263 264**起始版本:** 12 265 266 267**参数:** 268 269| 参数项 | 描述 | 270| -- | -- | 271| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 272 273**返回:** 274 275| 类型 | 说明 | 276| -- | -- | 277| int32_t | 动画延迟播放时间。 | 278 279### OH_ArkUI_AnimateOption_GetIterations() 280 281``` 282int32_t OH_ArkUI_AnimateOption_GetIterations(ArkUI_AnimateOption* option) 283``` 284 285**描述:** 286 287 288获取动画播放次数。 289 290**起始版本:** 12 291 292 293**参数:** 294 295| 参数项 | 描述 | 296| -- | -- | 297| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 298 299**返回:** 300 301| 类型 | 说明 | 302| -- | -- | 303| int32_t | 动画播放次数。 | 304 305### OH_ArkUI_AnimateOption_GetPlayMode() 306 307``` 308ArkUI_AnimationPlayMode OH_ArkUI_AnimateOption_GetPlayMode(ArkUI_AnimateOption* option) 309``` 310 311**描述:** 312 313 314获取动画播放模式。 315 316**起始版本:** 12 317 318 319**参数:** 320 321| 参数项 | 描述 | 322| -- | -- | 323| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 324 325**返回:** 326 327| 类型 | 说明 | 328| -- | -- | 329| [ArkUI_AnimationPlayMode](capi-native-type-h.md#arkui_animationplaymode) | 动画播放模式。 | 330 331### OH_ArkUI_AnimateOption_GetExpectedFrameRateRange() 332 333``` 334ArkUI_ExpectedFrameRateRange* OH_ArkUI_AnimateOption_GetExpectedFrameRateRange(ArkUI_AnimateOption* option) 335``` 336 337**描述:** 338 339 340获取动画的期望帧率。 341 342**起始版本:** 12 343 344 345**参数:** 346 347| 参数项 | 描述 | 348| -- | -- | 349| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 350 351**返回:** 352 353| 类型 | 说明 | 354|-----------------------------------| -- | 355| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* | 动画的期望帧率。 | 356 357### OH_ArkUI_AnimateOption_SetDuration() 358 359``` 360void OH_ArkUI_AnimateOption_SetDuration(ArkUI_AnimateOption* option, int32_t value) 361``` 362 363**描述:** 364 365 366设置动画持续时间。 367 368**起始版本:** 12 369 370 371**参数:** 372 373| 参数项 | 描述 | 374| -- | -- | 375| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 376| int32_t value | 持续时间,单位为ms(毫秒)。 | 377 378### OH_ArkUI_AnimateOption_SetTempo() 379 380``` 381void OH_ArkUI_AnimateOption_SetTempo(ArkUI_AnimateOption* option, float value) 382``` 383 384**描述:** 385 386 387设置动画播放速度。 388 389**起始版本:** 12 390 391 392**参数:** 393 394| 参数项 | 描述 | 395| -- | -- | 396| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 397| float value | 动画播放速度。 | 398 399### OH_ArkUI_AnimateOption_SetCurve() 400 401``` 402void OH_ArkUI_AnimateOption_SetCurve(ArkUI_AnimateOption* option, ArkUI_AnimationCurve value) 403``` 404 405**描述:** 406 407 408设置动画曲线。 409 410**起始版本:** 12 411 412 413**参数:** 414 415| 参数项 | 描述 | 416| -- | -- | 417| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 418| [ArkUI_AnimationCurve](capi-native-type-h.md#arkui_animationcurve) value | 动画曲线。默认值:ARKUI_CURVE_LINEAR。 | 419 420### OH_ArkUI_AnimateOption_SetDelay() 421 422``` 423void OH_ArkUI_AnimateOption_SetDelay(ArkUI_AnimateOption* option, int32_t value) 424``` 425 426**描述:** 427 428 429设置动画延迟播放时间。 430 431**起始版本:** 12 432 433 434**参数:** 435 436| 参数项 | 描述 | 437| -- | -- | 438| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 439| int32_t value | 动画延迟播放时间。 | 440 441### OH_ArkUI_AnimateOption_SetIterations() 442 443``` 444void OH_ArkUI_AnimateOption_SetIterations(ArkUI_AnimateOption* option, int32_t value) 445``` 446 447**描述:** 448 449 450设置动画播放次数。 451 452**起始版本:** 12 453 454 455**参数:** 456 457| 参数项 | 描述 | 458| -- | -- | 459| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 460| int32_t value | 动画播放次数。 | 461 462### OH_ArkUI_AnimateOption_SetPlayMode() 463 464``` 465void OH_ArkUI_AnimateOption_SetPlayMode(ArkUI_AnimateOption* option, ArkUI_AnimationPlayMode value) 466``` 467 468**描述:** 469 470 471设置动画播放模式。 472 473**起始版本:** 12 474 475 476**参数:** 477 478| 参数项 | 描述 | 479| -- | -- | 480| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 481| [ArkUI_AnimationPlayMode](capi-native-type-h.md#arkui_animationplaymode) value | 动画播放模式。 | 482 483### OH_ArkUI_AnimateOption_SetExpectedFrameRateRange() 484 485``` 486void OH_ArkUI_AnimateOption_SetExpectedFrameRateRange(ArkUI_AnimateOption* option, ArkUI_ExpectedFrameRateRange* value) 487``` 488 489**描述:** 490 491 492设置动画的期望帧率。 493 494**起始版本:** 12 495 496 497**参数:** 498 499| 参数项 | 描述 | 500| -- | -- | 501| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | 动画效果参数。 | 502| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* value | 动画的期望帧率。 | 503 504### OH_ArkUI_AnimateOption_SetICurve() 505 506``` 507void OH_ArkUI_AnimateOption_SetICurve(ArkUI_AnimateOption* option, ArkUI_CurveHandle value) 508``` 509 510**描述:** 511 512 513设置动画的动画曲线。 514 515> **说明:** 516> 517> 此方法优先于[OH_ArkUI_AnimateOption_SetCurve](#oh_arkui_animateoption_setcurve)生效。 518 519**起始版本:** 12 520 521 522**参数:** 523 524| 参数项 | 描述 | 525| -- | -- | 526| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | animator动画参数。 | 527| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) value | 动画曲线参数。 | 528 529### OH_ArkUI_AnimateOption_GetICurve() 530 531``` 532ArkUI_CurveHandle OH_ArkUI_AnimateOption_GetICurve(ArkUI_AnimateOption* option) 533``` 534 535**描述:** 536 537 538获取动画的动画曲线。 539 540**起始版本:** 12 541 542 543**参数:** 544 545| 参数项 | 描述 | 546| -- | -- | 547| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* option | animator动画参数。 | 548 549**返回:** 550 551| 类型 | 说明 | 552| -- | -- | 553| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 动画的动画曲线。参数option异常时返回NULL。 | 554 555### OH_ArkUI_KeyframeAnimateOption_Create() 556 557``` 558ArkUI_KeyframeAnimateOption* OH_ArkUI_KeyframeAnimateOption_Create(int32_t size) 559``` 560 561**描述:** 562 563 564获取关键帧动画参数。 565 566**起始版本:** 12 567 568 569**参数:** 570 571| 参数项 | 描述 | 572| -- | -- | 573| int32_t size | 关键帧动画状态数。 | 574 575**返回:** 576 577| 类型 | 说明 | 578|----------------------------------| -- | 579| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* | 关键帧动画参数对象。size小于0时返回NULL。 | 580 581### OH_ArkUI_KeyframeAnimateOption_Dispose() 582 583``` 584void OH_ArkUI_KeyframeAnimateOption_Dispose(ArkUI_KeyframeAnimateOption* option) 585``` 586 587**描述:** 588 589 590销毁关键帧动画参数。 591 592**起始版本:** 12 593 594 595**参数:** 596 597| 参数项 | 描述 | 598| -- | -- | 599| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数对象。 | 600 601### OH_ArkUI_KeyframeAnimateOption_SetDelay() 602 603``` 604int32_t OH_ArkUI_KeyframeAnimateOption_SetDelay(ArkUI_KeyframeAnimateOption* option, int32_t value) 605``` 606 607**描述:** 608 609 610设置关键帧动画的整体延时时间,单位为ms(毫秒),默认不延时播放。 611 612**起始版本:** 12 613 614 615**参数:** 616 617| 参数项 | 描述 | 618| -- | -- | 619| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 620| int32_t value | 延时时间, 单位为ms(毫秒)。 | 621 622**返回:** 623 624| 类型 | 说明 | 625| -- | -- | 626| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 627 628### OH_ArkUI_KeyframeAnimateOption_SetIterations() 629 630``` 631int32_t OH_ArkUI_KeyframeAnimateOption_SetIterations(ArkUI_KeyframeAnimateOption* option, int32_t value) 632``` 633 634**描述:** 635 636 637设置关键帧动画的动画播放次数。默认播放一次,设置为-1时表示无限次播放。设置为0时表示无动画效果。 638 639**起始版本:** 12 640 641 642**参数:** 643 644| 参数项 | 描述 | 645| -- | -- | 646| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 647| int32_t value | 动画播放次数。 | 648 649**返回:** 650 651| 类型 | 说明 | 652| -- | -- | 653| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 654 655### OH_ArkUI_KeyframeAnimateOption_RegisterOnFinishCallback() 656 657``` 658int32_t OH_ArkUI_KeyframeAnimateOption_RegisterOnFinishCallback(ArkUI_KeyframeAnimateOption* option, void* userData, void (*onFinish)(void* userData)) 659``` 660 661**描述:** 662 663 664设置关键帧动画播放完成回调。当keyframe动画所有次数播放完成后调用。 665 666**起始版本:** 12 667 668 669**参数:** 670 671| 参数项 | 描述 | 672|-----------------------------------------| -- | 673| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 674| void* userData | 用户自定义对象指针。 | 675| void (\*onFinish)(void\* userData) | 回调方法。<br/>- userData:回调函数的入参,用户自定义对象指针。 | 676 677**返回:** 678 679| 类型 | 说明 | 680| -- | -- | 681| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 682 683### OH_ArkUI_KeyframeAnimateOption_SetExpectedFrameRate() 684 685``` 686int32_t OH_ArkUI_KeyframeAnimateOption_SetExpectedFrameRate(ArkUI_KeyframeAnimateOption* option, ArkUI_ExpectedFrameRateRange* frameRate) 687``` 688 689**描述:** 690 691 692设置关键帧动画期望帧率。 693 694**起始版本:** 19 695 696 697**参数:** 698 699| 参数项 | 描述 | 700| -- | -- | 701| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 702| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* frameRate | 关键帧动画的期望帧率。 | 703 704**返回:** 705 706| 类型 | 说明 | 707| -- | -- | 708| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 709 710### OH_ArkUI_KeyframeAnimateOption_SetDuration() 711 712``` 713int32_t OH_ArkUI_KeyframeAnimateOption_SetDuration(ArkUI_KeyframeAnimateOption* option, int32_t value, int32_t index) 714``` 715 716**描述:** 717 718 719设置关键帧动画某段关键帧动画的持续时间,单位为毫秒。 720 721**起始版本:** 12 722 723 724**参数:** 725 726| 参数项 | 描述 | 727| -- | -- | 728| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 729| int32_t value | 持续时间。单位为毫秒。 | 730| int32_t index | 状态索引值。 | 731 732**返回:** 733 734| 类型 | 说明 | 735| -- | -- | 736| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 737 738### OH_ArkUI_KeyframeAnimateOption_SetCurve() 739 740``` 741int32_t OH_ArkUI_KeyframeAnimateOption_SetCurve(ArkUI_KeyframeAnimateOption* option, ArkUI_CurveHandle value, int32_t index) 742``` 743 744**描述:** 745 746 747设置关键帧动画某段关键帧使用的动画曲线。 748 749> **说明:** 750> 751> 由于springMotion、responsiveSpringMotion、interpolatingSpring曲线时长不生效,故不支持这三种曲线。 752 753**起始版本:** 12 754 755 756**参数:** 757 758| 参数项 | 描述 | 759| -- | -- | 760| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 761| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) value | 该关键帧使用的动画曲线。默认值:EASE_IN_OUT。 | 762| int32_t index | 状态索引值。 | 763 764**返回:** 765 766| 类型 | 说明 | 767| -- | -- | 768| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 769 770### OH_ArkUI_KeyframeAnimateOption_RegisterOnEventCallback() 771 772``` 773int32_t OH_ArkUI_KeyframeAnimateOption_RegisterOnEventCallback(ArkUI_KeyframeAnimateOption* option, void* userData, void (*event)(void* userData), int32_t index) 774``` 775 776**描述:** 777 778 779设置关键帧时刻状态的闭包函数,即在该关键帧时刻要达到的状态。 780 781**起始版本:** 12 782 783 784**参数:** 785 786| 参数项 | 描述 | 787|-----------------------------------------| -- | 788| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 789| void* userData | 用户定义对象指针。 | 790| void (\*event)(void\* userData) | 闭包函数。 | 791| int32_t index | 状态索引值。 | 792 793**返回:** 794 795| 类型 | 说明 | 796| -- | -- | 797| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 798 799### OH_ArkUI_KeyframeAnimateOption_GetDelay() 800 801``` 802int32_t OH_ArkUI_KeyframeAnimateOption_GetDelay(ArkUI_KeyframeAnimateOption* option) 803``` 804 805**描述:** 806 807 808获取关键帧整体延时时间。 809 810**起始版本:** 12 811 812 813**参数:** 814 815| 参数项 | 描述 | 816| -- | -- | 817| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 818 819**返回:** 820 821| 类型 | 说明 | 822| -- | -- | 823| int32_t | 整体延时时间。 | 824 825### OH_ArkUI_KeyframeAnimateOption_GetIterations() 826 827``` 828int32_t OH_ArkUI_KeyframeAnimateOption_GetIterations(ArkUI_KeyframeAnimateOption* option) 829``` 830 831**描述:** 832 833 834获取关键帧动画播放次数。 835 836**起始版本:** 12 837 838 839**参数:** 840 841| 参数项 | 描述 | 842| -- | -- | 843| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 844 845**返回:** 846 847| 类型 | 说明 | 848| -- | -- | 849| int32_t | 动画播放次数。 | 850 851### OH_ArkUI_KeyframeAnimateOption_GetExpectedFrameRate() 852 853``` 854ArkUI_ExpectedFrameRateRange* OH_ArkUI_KeyframeAnimateOption_GetExpectedFrameRate(ArkUI_KeyframeAnimateOption* option) 855``` 856 857**描述:** 858 859 860获取关键帧动画参数的期望帧率。 861 862**起始版本:** 19 863 864 865**参数:** 866 867| 参数项 | 描述 | 868| -- | -- | 869| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 870 871**返回:** 872 873| 类型 | 说明 | 874|-----------------------------------| -- | 875| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* | 关键帧动画参数的期望帧率。 | 876 877### OH_ArkUI_KeyframeAnimateOption_GetDuration() 878 879``` 880int32_t OH_ArkUI_KeyframeAnimateOption_GetDuration(ArkUI_KeyframeAnimateOption* option, int32_t index) 881``` 882 883**描述:** 884 885 886获取关键帧动画某段状态持续时间。 887 888**起始版本:** 12 889 890 891**参数:** 892 893| 参数项 | 描述 | 894| -- | -- | 895| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 896| int32_t index | 状态索引值。 | 897 898**返回:** 899 900| 类型 | 说明 | 901| -- | -- | 902| int32_t | 持续时间。单位为毫秒。 | 903 904### OH_ArkUI_KeyframeAnimateOption_GetCurve() 905 906``` 907ArkUI_CurveHandle OH_ArkUI_KeyframeAnimateOption_GetCurve(ArkUI_KeyframeAnimateOption* option, int32_t index) 908``` 909 910**描述:** 911 912 913获取关键帧动画某段状态动画曲线。 914 915**起始版本:** 12 916 917 918**参数:** 919 920| 参数项 | 描述 | 921| -- | -- | 922| [ArkUI_KeyframeAnimateOption](capi-arkui-nativemodule-arkui-keyframeanimateoption.md)* option | 关键帧动画参数。 | 923| int32_t index | 状态索引值。 | 924 925**返回:** 926 927| 类型 | 说明 | 928| -- | -- | 929| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 动画曲线。函数参数异常时返回NULL。 | 930 931### OH_ArkUI_AnimatorOption_Create() 932 933``` 934ArkUI_AnimatorOption* OH_ArkUI_AnimatorOption_Create(int32_t keyframeSize) 935``` 936 937**描述:** 938 939 940创建animator动画对象参数。 941 942> **说明:** 943> 944> keyframeSize大于0时,动画插值起点默认是0,动画插值终点模式值是1。不支持设置。 945 946**起始版本:** 12 947 948 949**参数:** 950 951| 参数项 | 描述 | 952| -- | -- | 953| int32_t keyframeSize | 关键帧个数。 | 954 955**返回:** 956 957| 类型 | 说明 | 958| -- | -- | 959| ArkUI_AnimatorOption* | animator动画对象参数指针。size小于0时返回NULL。 | 960 961### OH_ArkUI_AnimatorOption_Dispose() 962 963``` 964void OH_ArkUI_AnimatorOption_Dispose(ArkUI_AnimatorOption* option) 965``` 966 967**描述:** 968 969 970销毁animator动画对象参数。 971 972**起始版本:** 12 973 974### OH_ArkUI_AnimatorOption_SetDuration() 975 976``` 977int32_t OH_ArkUI_AnimatorOption_SetDuration(ArkUI_AnimatorOption* option, int32_t value) 978``` 979 980**描述:** 981 982 983设置animator动画播放的时长,单位毫秒。 984 985**起始版本:** 12 986 987 988**参数:** 989 990| 参数项 | 描述 | 991| -- | -- | 992| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 993| int32_t value | 播放的时长,单位毫秒。 | 994 995**返回:** 996 997| 类型 | 说明 | 998| -- | -- | 999| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1000 1001### OH_ArkUI_AnimatorOption_SetDelay() 1002 1003``` 1004int32_t OH_ArkUI_AnimatorOption_SetDelay(ArkUI_AnimatorOption* option, int32_t value) 1005``` 1006 1007**描述:** 1008 1009 1010设置animator动画延时播放时长,单位毫秒。 1011 1012**起始版本:** 12 1013 1014 1015**参数:** 1016 1017| 参数项 | 描述 | 1018| -- | -- | 1019| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1020| int32_t value | 延时播放时长,单位毫秒。 | 1021 1022**返回:** 1023 1024| 类型 | 说明 | 1025| -- | -- | 1026| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1027 1028### OH_ArkUI_AnimatorOption_SetIterations() 1029 1030``` 1031int32_t OH_ArkUI_AnimatorOption_SetIterations(ArkUI_AnimatorOption* option, int32_t value) 1032``` 1033 1034**描述:** 1035 1036 1037设置animator动画播放次数。设置为0时不播放,设置为-1时无限次播放。 1038 1039> **说明:** 1040> 1041> 设置为除-1外其他负数视为无效取值,无效取值动画默认播放1次。 1042 1043**起始版本:** 12 1044 1045 1046**参数:** 1047 1048| 参数项 | 描述 | 1049| -- | -- | 1050| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1051| int32_t value | 动画播放次数。 | 1052 1053**返回:** 1054 1055| 类型 | 说明 | 1056| -- | -- | 1057| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1058 1059### OH_ArkUI_AnimatorOption_SetFill() 1060 1061``` 1062int32_t OH_ArkUI_AnimatorOption_SetFill(ArkUI_AnimatorOption* option, ArkUI_AnimationFillMode value) 1063``` 1064 1065**描述:** 1066 1067 1068设置animator动画执行后是否恢复到初始状态。 1069 1070**起始版本:** 12 1071 1072 1073**参数:** 1074 1075| 参数项 | 描述 | 1076| -- | -- | 1077| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1078| [ArkUI_AnimationFillMode](capi-native-type-h.md#arkui_animationfillmode) value | 动画执行后是否恢复到初始状态。 | 1079 1080**返回:** 1081 1082| 类型 | 说明 | 1083| -- | -- | 1084| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1085 1086### OH_ArkUI_AnimatorOption_SetDirection() 1087 1088``` 1089int32_t OH_ArkUI_AnimatorOption_SetDirection(ArkUI_AnimatorOption* option, ArkUI_AnimationDirection value) 1090``` 1091 1092**描述:** 1093 1094 1095设置animator动画播放方向。 1096 1097**起始版本:** 12 1098 1099 1100**参数:** 1101 1102| 参数项 | 描述 | 1103| -- | -- | 1104| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1105| [ArkUI_AnimationDirection](capi-native-type-h.md#arkui_animationdirection) value | 动画播放方向。 | 1106 1107**返回:** 1108 1109| 类型 | 说明 | 1110| -- | -- | 1111| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1112 1113### OH_ArkUI_AnimatorOption_SetCurve() 1114 1115``` 1116int32_t OH_ArkUI_AnimatorOption_SetCurve(ArkUI_AnimatorOption* option, ArkUI_CurveHandle value) 1117``` 1118 1119**描述:** 1120 1121 1122设置animator动画插值曲线。 1123 1124> **说明:** 1125> 1126> 不支持springCurve,springMotion,responsiveSpringMotion,interpolatingSpring,customCurve动画曲线。 1127 1128**起始版本:** 12 1129 1130 1131**参数:** 1132 1133| 参数项 | 描述 | 1134| -- | -- | 1135| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1136| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) value | 动画插值曲线。默认值:ARKUI_CURVE_LINEAR。 | 1137 1138**返回:** 1139 1140| 类型 | 说明 | 1141| -- | -- | 1142| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1143 1144### OH_ArkUI_AnimatorOption_SetBegin() 1145 1146``` 1147int32_t OH_ArkUI_AnimatorOption_SetBegin(ArkUI_AnimatorOption* option, float value) 1148``` 1149 1150**描述:** 1151 1152 1153设置animator动画插值起点。 1154 1155> **说明:** 1156> 1157> 当Animator动画为keyframe动画时,此方法不生效。 1158 1159**起始版本:** 12 1160 1161 1162**参数:** 1163 1164| 参数项 | 描述 | 1165| -- | -- | 1166| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1167| float value | 动画插值起点。 | 1168 1169**返回:** 1170 1171| 类型 | 说明 | 1172| -- | -- | 1173| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1174 1175### OH_ArkUI_AnimatorOption_SetEnd() 1176 1177``` 1178int32_t OH_ArkUI_AnimatorOption_SetEnd(ArkUI_AnimatorOption* option, float value) 1179``` 1180 1181**描述:** 1182 1183 1184设置animator动画插值终点。 1185 1186> **说明:** 1187> 1188> 当Animator动画为keyframe动画时,此方法不生效。 1189 1190**起始版本:** 12 1191 1192 1193**参数:** 1194 1195| 参数项 | 描述 | 1196| -- | -- | 1197| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1198| float value | 动画插值终点。 | 1199 1200**返回:** 1201 1202| 类型 | 说明 | 1203| -- | -- | 1204| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1205 1206### OH_ArkUI_AnimatorOption_SetExpectedFrameRateRange() 1207 1208``` 1209int32_t OH_ArkUI_AnimatorOption_SetExpectedFrameRateRange(ArkUI_AnimatorOption* option, ArkUI_ExpectedFrameRateRange* value) 1210``` 1211 1212**描述:** 1213 1214 1215设置animator动画期望的帧率范围。 1216 1217**起始版本:** 12 1218 1219 1220**参数:** 1221 1222| 参数项 | 描述 | 1223| -- | -- | 1224| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1225| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* value | 期望的帧率范围对象。 | 1226 1227**返回:** 1228 1229| 类型 | 说明 | 1230| -- | -- | 1231| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1232 1233### OH_ArkUI_AnimatorOption_SetKeyframe() 1234 1235``` 1236int32_t OH_ArkUI_AnimatorOption_SetKeyframe(ArkUI_AnimatorOption* option, float time, float value, int32_t index) 1237``` 1238 1239**描述:** 1240 1241 1242设置animator动画关键帧参数。 1243 1244**起始版本:** 12 1245 1246 1247**参数:** 1248 1249| 参数项 | 描述 | 1250| -- | -- | 1251| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1252| float time | 关键帧时间。取值范围:[0, 1], 必须是递增。 | 1253| float value | 关键帧数值。 | 1254| int32_t index | 关键帧的索引值。 | 1255 1256**返回:** 1257 1258| 类型 | 说明 | 1259| -- | -- | 1260| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1261 1262### OH_ArkUI_AnimatorOption_SetKeyframeCurve() 1263 1264``` 1265int32_t OH_ArkUI_AnimatorOption_SetKeyframeCurve(ArkUI_AnimatorOption* option, ArkUI_CurveHandle value, int32_t index) 1266``` 1267 1268**描述:** 1269 1270 1271设置animator动画关键帧曲线类型。 1272 1273> **说明:** 1274> 1275> 不支持springCurve,springMotion,responsiveSpringMotion,interpolatingSpring,customCurve动画曲线。 1276 1277**起始版本:** 12 1278 1279 1280**参数:** 1281 1282| 参数项 | 描述 | 1283| -- | -- | 1284| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1285| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) value | 动画插值曲线。 | 1286| int32_t index | 关键帧的索引值。 | 1287 1288**返回:** 1289 1290| 类型 | 说明 | 1291| -- | -- | 1292| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1293 1294### OH_ArkUI_AnimatorOption_GetDuration() 1295 1296``` 1297int32_t OH_ArkUI_AnimatorOption_GetDuration(ArkUI_AnimatorOption* option) 1298``` 1299 1300**描述:** 1301 1302 1303获取animator动画播放的时长。 1304 1305**起始版本:** 12 1306 1307 1308**参数:** 1309 1310| 参数项 | 描述 | 1311| -- | -- | 1312| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1313 1314**返回:** 1315 1316| 类型 | 说明 | 1317| -- | -- | 1318| int32_t | 动画播放的时长,单位毫秒。 | 1319 1320### OH_ArkUI_AnimatorOption_GetDelay() 1321 1322``` 1323int32_t OH_ArkUI_AnimatorOption_GetDelay(ArkUI_AnimatorOption* option) 1324``` 1325 1326**描述:** 1327 1328 1329获取animator动画延时播放时长。 1330 1331**起始版本:** 12 1332 1333 1334**参数:** 1335 1336| 参数项 | 描述 | 1337| -- | -- | 1338| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1339 1340**返回:** 1341 1342| 类型 | 说明 | 1343| -- | -- | 1344| int32_t | 动画延时播放时长,单位毫秒。 | 1345 1346### OH_ArkUI_AnimatorOption_GetIterations() 1347 1348``` 1349int32_t OH_ArkUI_AnimatorOption_GetIterations(ArkUI_AnimatorOption* option) 1350``` 1351 1352**描述:** 1353 1354 1355获取animator动画播放次数。 1356 1357**起始版本:** 12 1358 1359 1360**参数:** 1361 1362| 参数项 | 描述 | 1363| -- | -- | 1364| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画动画参数。 | 1365 1366**返回:** 1367 1368| 类型 | 说明 | 1369| -- | -- | 1370| int32_t | 动画播放次数。 | 1371 1372### OH_ArkUI_AnimatorOption_GetFill() 1373 1374``` 1375ArkUI_AnimationFillMode OH_ArkUI_AnimatorOption_GetFill(ArkUI_AnimatorOption* option) 1376``` 1377 1378**描述:** 1379 1380 1381获取animator动画执行后是否恢复到初始状态。 1382 1383**起始版本:** 12 1384 1385 1386**参数:** 1387 1388| 参数项 | 描述 | 1389| -- | -- | 1390| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1391 1392**返回:** 1393 1394| 类型 | 说明 | 1395| -- | -- | 1396| [ArkUI_AnimationFillMode](capi-native-type-h.md#arkui_animationfillmode) | 执行后是否恢复到初始状态。 | 1397 1398### OH_ArkUI_AnimatorOption_GetDirection() 1399 1400``` 1401ArkUI_AnimationDirection OH_ArkUI_AnimatorOption_GetDirection(ArkUI_AnimatorOption* option) 1402``` 1403 1404**描述:** 1405 1406 1407获取animator动画播放方向。 1408 1409**起始版本:** 12 1410 1411 1412**参数:** 1413 1414| 参数项 | 描述 | 1415| -- | -- | 1416| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1417 1418**返回:** 1419 1420| 类型 | 说明 | 1421| -- | -- | 1422| [ArkUI_AnimationDirection](capi-native-type-h.md#arkui_animationdirection) | 动画播放方向。 | 1423 1424### OH_ArkUI_AnimatorOption_GetCurve() 1425 1426``` 1427ArkUI_CurveHandle OH_ArkUI_AnimatorOption_GetCurve(ArkUI_AnimatorOption* option) 1428``` 1429 1430**描述:** 1431 1432 1433获取animator动画插值曲线。 1434 1435**起始版本:** 12 1436 1437 1438**参数:** 1439 1440| 参数项 | 描述 | 1441| -- | -- | 1442| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1443 1444**返回:** 1445 1446| 类型 | 说明 | 1447| -- | -- | 1448| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 动画插值曲线。 | 1449 1450### OH_ArkUI_AnimatorOption_GetBegin() 1451 1452``` 1453float OH_ArkUI_AnimatorOption_GetBegin(ArkUI_AnimatorOption* option) 1454``` 1455 1456**描述:** 1457 1458 1459获取animator动画插值起点。 1460 1461**起始版本:** 12 1462 1463 1464**参数:** 1465 1466| 参数项 | 描述 | 1467| -- | -- | 1468| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1469 1470**返回:** 1471 1472| 类型 | 说明 | 1473| -- | -- | 1474| float | 动画插值起点。 | 1475 1476### OH_ArkUI_AnimatorOption_GetEnd() 1477 1478``` 1479float OH_ArkUI_AnimatorOption_GetEnd(ArkUI_AnimatorOption* option) 1480``` 1481 1482**描述:** 1483 1484 1485获取animator动画插值终点。 1486 1487**起始版本:** 12 1488 1489 1490**参数:** 1491 1492| 参数项 | 描述 | 1493| -- | -- | 1494| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1495 1496**返回:** 1497 1498| 类型 | 说明 | 1499| -- | -- | 1500| float | 动画插值终点。 | 1501 1502### OH_ArkUI_AnimatorOption_GetExpectedFrameRateRange() 1503 1504``` 1505ArkUI_ExpectedFrameRateRange* OH_ArkUI_AnimatorOption_GetExpectedFrameRateRange(ArkUI_AnimatorOption* option) 1506``` 1507 1508**描述:** 1509 1510 1511获取animator动画期望的帧率范围。 1512 1513**起始版本:** 12 1514 1515 1516**参数:** 1517 1518| 参数项 | 描述 | 1519| -- | -- | 1520| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1521 1522**返回:** 1523 1524| 类型 | 说明 | 1525| -- | -- | 1526| [ArkUI_ExpectedFrameRateRange](capi-arkui-nativemodule-arkui-expectedframeraterange.md)* | 期望的帧率范围对象指针。函数参数异常时返回NULL。 | 1527 1528### OH_ArkUI_AnimatorOption_GetKeyframeTime() 1529 1530``` 1531float OH_ArkUI_AnimatorOption_GetKeyframeTime(ArkUI_AnimatorOption* option, int32_t index) 1532``` 1533 1534**描述:** 1535 1536 1537获取animator动画关键帧时间。 1538 1539**起始版本:** 12 1540 1541 1542**参数:** 1543 1544| 参数项 | 描述 | 1545| -- | -- | 1546| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1547| int32_t index | 关键帧的索引值。 | 1548 1549**返回:** 1550 1551| 类型 | 说明 | 1552| -- | -- | 1553| float | 关键帧时间。 | 1554 1555### OH_ArkUI_AnimatorOption_GetKeyframeValue() 1556 1557``` 1558float OH_ArkUI_AnimatorOption_GetKeyframeValue(ArkUI_AnimatorOption* option, int32_t index) 1559``` 1560 1561**描述:** 1562 1563 1564获取animator动画关键帧数值。 1565 1566**起始版本:** 12 1567 1568 1569**参数:** 1570 1571| 参数项 | 描述 | 1572| -- | -- | 1573| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1574| int32_t index | 关键帧的索引值。 | 1575 1576**返回:** 1577 1578| 类型 | 说明 | 1579| -- | -- | 1580| float | 关键帧数值。 | 1581 1582### OH_ArkUI_AnimatorOption_GetKeyframeCurve() 1583 1584``` 1585ArkUI_CurveHandle OH_ArkUI_AnimatorOption_GetKeyframeCurve(ArkUI_AnimatorOption* option, int32_t index) 1586``` 1587 1588**描述:** 1589 1590 1591获取animator动画关键帧动画插值曲线。 1592 1593**起始版本:** 12 1594 1595 1596**参数:** 1597 1598| 参数项 | 描述 | 1599| -- | -- | 1600| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画对象参数。 | 1601| int32_t index | 关键帧的索引值。 | 1602 1603**返回:** 1604 1605| 类型 | 说明 | 1606| -- | -- | 1607| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 动画插值曲线。函数参数异常时返回NULL。 | 1608 1609### OH_ArkUI_AnimatorEvent_GetUserData() 1610 1611``` 1612void* OH_ArkUI_AnimatorEvent_GetUserData(ArkUI_AnimatorEvent* event) 1613``` 1614 1615**描述:** 1616 1617 1618获取动画事件对象中的用户自定义对象。 1619 1620**起始版本:** 12 1621 1622 1623**参数:** 1624 1625| 参数项 | 描述 | 1626| -- | -- | 1627| [ArkUI_AnimatorEvent](capi-arkui-nativemodule-arkui-animatorevent.md)* event | 动画事件对象。 | 1628 1629**返回:** 1630 1631| 类型 | 说明 | 1632| -- | -- | 1633| void* | 用户自定义对象。 | 1634 1635### OH_ArkUI_AnimatorOnFrameEvent_GetUserData() 1636 1637``` 1638void* OH_ArkUI_AnimatorOnFrameEvent_GetUserData(ArkUI_AnimatorOnFrameEvent* event) 1639``` 1640 1641**描述:** 1642 1643 1644获取动画事件对象中的用户自定义对象。 1645 1646**起始版本:** 12 1647 1648 1649**参数:** 1650 1651| 参数项 | 描述 | 1652| -- | -- | 1653| [ArkUI_AnimatorOnFrameEvent](capi-arkui-nativemodule-arkui-animatoronframeevent.md)* event | 动画事件对象。 | 1654 1655**返回:** 1656 1657| 类型 | 说明 | 1658| -- | -- | 1659| void* | 用户自定义对象。 | 1660 1661### OH_ArkUI_AnimatorOnFrameEvent_GetValue() 1662 1663``` 1664float OH_ArkUI_AnimatorOnFrameEvent_GetValue(ArkUI_AnimatorOnFrameEvent* event) 1665``` 1666 1667**描述:** 1668 1669 1670获取动画事件对象中的当前进度。 1671 1672**起始版本:** 12 1673 1674 1675**参数:** 1676 1677| 参数项 | 描述 | 1678| -- | -- | 1679| [ArkUI_AnimatorOnFrameEvent](capi-arkui-nativemodule-arkui-animatoronframeevent.md)* event | 动画事件对象。 | 1680 1681**返回:** 1682 1683| 类型 | 说明 | 1684| -- | -- | 1685| float | 动画进度。 | 1686 1687### OH_ArkUI_AnimatorOption_RegisterOnFrameCallback() 1688 1689``` 1690int32_t OH_ArkUI_AnimatorOption_RegisterOnFrameCallback(ArkUI_AnimatorOption* option, void* userData, void (*callback)(ArkUI_AnimatorOnFrameEvent* event)) 1691``` 1692 1693**描述:** 1694 1695 1696设置animator动画接收到帧时回调。 1697 1698**起始版本:** 12 1699 1700 1701**参数:** 1702 1703| 参数项 | 描述 | 1704|----------------------------------| -- | 1705| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1706| void* userData | 用户自定义参数。 | 1707| void (\*callback)(ArkUI_AnimatorOnFrameEvent\* event) | 回调函数。<br/>- event:回调函数的入参,动画事件对象。| 1708 1709**返回:** 1710 1711| 类型 | 说明 | 1712| -- | -- | 1713| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1714 1715### OH_ArkUI_AnimatorOption_RegisterOnFinishCallback() 1716 1717``` 1718int32_t OH_ArkUI_AnimatorOption_RegisterOnFinishCallback(ArkUI_AnimatorOption* option, void* userData, void (*callback)(ArkUI_AnimatorEvent* event)) 1719``` 1720 1721**描述:** 1722 1723 1724设置animator动画完成时回调。 1725 1726**起始版本:** 12 1727 1728 1729**参数:** 1730 1731| 参数项 | 描述 | 1732| -- | -- | 1733| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1734| void* userData | 用户自定义参数。 | 1735| void (\*callback)(ArkUI_AnimatorEvent\* event) | 回调函数。 <br/>- event:回调函数的入参,动画事件对象。| 1736 1737**返回:** 1738 1739| 类型 | 说明 | 1740| -- | -- | 1741| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1742 1743### OH_ArkUI_AnimatorOption_RegisterOnCancelCallback() 1744 1745``` 1746int32_t OH_ArkUI_AnimatorOption_RegisterOnCancelCallback(ArkUI_AnimatorOption* option, void* userData, void (*callback)(ArkUI_AnimatorEvent* event)) 1747``` 1748 1749**描述:** 1750 1751 1752设置animator动画被取消时回调。 1753 1754**起始版本:** 12 1755 1756 1757**参数:** 1758 1759| 参数项 | 描述 | 1760| -- | -- | 1761| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1762| void* userData | 用户自定义参数。 | 1763| void (\*callback)(ArkUI_AnimatorEvent\* event) | 回调函数。 <br/>- event:回调函数的入参,动画事件对象。| 1764 1765**返回:** 1766 1767| 类型 | 说明 | 1768| -- | -- | 1769| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1770 1771### OH_ArkUI_AnimatorOption_RegisterOnRepeatCallback() 1772 1773``` 1774int32_t OH_ArkUI_AnimatorOption_RegisterOnRepeatCallback(ArkUI_AnimatorOption* option, void* userData, void (*callback)(ArkUI_AnimatorEvent* event)) 1775``` 1776 1777**描述:** 1778 1779 1780设置animator动画重复时回调。 1781 1782**起始版本:** 12 1783 1784 1785**参数:** 1786 1787| 参数项 | 描述 | 1788| -- | -- | 1789| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1790| void* userData | 用户自定义参数。 | 1791| void (\*callback)(ArkUI_AnimatorEvent\* event) | 回调函数。<br/>- event:回调函数的入参,动画事件对象。 | 1792 1793**返回:** 1794 1795| 类型 | 说明 | 1796| -- | -- | 1797| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1798 1799### OH_ArkUI_Animator_ResetAnimatorOption() 1800 1801``` 1802int32_t OH_ArkUI_Animator_ResetAnimatorOption(ArkUI_AnimatorHandle animatorHandle, ArkUI_AnimatorOption* option) 1803``` 1804 1805**描述:** 1806 1807 1808更新animator动画。 1809 1810**起始版本:** 12 1811 1812 1813**参数:** 1814 1815| 参数项 | 描述 | 1816|---------------------------------------------------------------------------------| -- | 1817| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1818| [ArkUI_AnimatorOption](capi-arkui-nativemodule-arkui-animatoroption.md)* option | animator动画参数。 | 1819 1820**返回:** 1821 1822| 类型 | 说明 | 1823| -- | -- | 1824| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1825 1826### OH_ArkUI_Animator_Play() 1827 1828``` 1829int32_t OH_ArkUI_Animator_Play(ArkUI_AnimatorHandle animatorHandle) 1830``` 1831 1832**描述:** 1833 1834 1835启动animator动画。 1836 1837**起始版本:** 12 1838 1839 1840**参数:** 1841 1842| 参数项 | 描述 | 1843| -- | -- | 1844| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1845 1846**返回:** 1847 1848| 类型 | 说明 | 1849| -- | -- | 1850| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1851 1852### OH_ArkUI_Animator_Finish() 1853 1854``` 1855int32_t OH_ArkUI_Animator_Finish(ArkUI_AnimatorHandle animatorHandle) 1856``` 1857 1858**描述:** 1859 1860 1861结束animator动画。 1862 1863**起始版本:** 12 1864 1865 1866**参数:** 1867 1868| 参数项 | 描述 | 1869| -- | -- | 1870| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1871 1872**返回:** 1873 1874| 类型 | 说明 | 1875| -- | -- | 1876| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1877 1878### OH_ArkUI_Animator_Pause() 1879 1880``` 1881int32_t OH_ArkUI_Animator_Pause(ArkUI_AnimatorHandle animatorHandle) 1882``` 1883 1884**描述:** 1885 1886 1887暂停animator动画。 1888 1889**起始版本:** 12 1890 1891 1892**参数:** 1893 1894| 参数项 | 描述 | 1895| -- | -- | 1896| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1897 1898**返回:** 1899 1900| 类型 | 说明 | 1901| -- | -- | 1902| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1903 1904### OH_ArkUI_Animator_Cancel() 1905 1906``` 1907int32_t OH_ArkUI_Animator_Cancel(ArkUI_AnimatorHandle animatorHandle) 1908``` 1909 1910**描述:** 1911 1912 1913取消animator动画。 1914 1915**起始版本:** 12 1916 1917 1918**参数:** 1919 1920| 参数项 | 描述 | 1921| -- | -- | 1922| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1923 1924**返回:** 1925 1926| 类型 | 说明 | 1927| -- | -- | 1928| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1929 1930### OH_ArkUI_Animator_Reverse() 1931 1932``` 1933int32_t OH_ArkUI_Animator_Reverse(ArkUI_AnimatorHandle animatorHandle) 1934``` 1935 1936**描述:** 1937 1938 1939以相反的顺序播放animator动画。 1940 1941**起始版本:** 12 1942 1943 1944**参数:** 1945 1946| 参数项 | 描述 | 1947| -- | -- | 1948| [ArkUI_AnimatorHandle](capi-arkui-nativemodule-arkui-animator8h.md) animatorHandle | animator动画对象。 | 1949 1950**返回:** 1951 1952| 类型 | 说明 | 1953| -- | -- | 1954| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 1955 1956### OH_ArkUI_Curve_CreateCurveByType() 1957 1958``` 1959ArkUI_CurveHandle OH_ArkUI_Curve_CreateCurveByType(ArkUI_AnimationCurve curve) 1960``` 1961 1962**描述:** 1963 1964 1965插值曲线的初始化函数,可以根据入参创建一个插值曲线对象。 1966 1967**起始版本:** 12 1968 1969 1970**参数:** 1971 1972| 参数项 | 描述 | 1973| -- | -- | 1974| [ArkUI_AnimationCurve](capi-native-type-h.md#arkui_animationcurve) curve | 曲线类型。 | 1975 1976**返回:** 1977 1978| 类型 | 说明 | 1979| -- | -- | 1980| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 1981 1982### OH_ArkUI_Curve_CreateStepsCurve() 1983 1984``` 1985ArkUI_CurveHandle OH_ArkUI_Curve_CreateStepsCurve(int32_t count, bool end) 1986``` 1987 1988**描述:** 1989 1990 1991构造阶梯曲线对象。 1992 1993**起始版本:** 12 1994 1995 1996**参数:** 1997 1998| 参数项 | 描述 | 1999| -- | -- | 2000| int32_t count | 阶梯的数量,需要为正整数,取值范围:[1, +∞)。 | 2001| bool end | 在每个间隔的起点或是终点发生阶跃变化。true:在终点发生阶跃变化。false:在起点发生阶跃变化。 | 2002 2003**返回:** 2004 2005| 类型 | 说明 | 2006| -- | -- | 2007| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2008 2009### OH_ArkUI_Curve_CreateCubicBezierCurve() 2010 2011``` 2012ArkUI_CurveHandle OH_ArkUI_Curve_CreateCubicBezierCurve(float x1, float y1, float x2, float y2) 2013``` 2014 2015**描述:** 2016 2017 2018构造三阶贝塞尔曲线对象。 2019 2020**起始版本:** 12 2021 2022 2023**参数:** 2024 2025| 参数项 | 描述 | 2026| -- | -- | 2027| float x1 | 确定贝塞尔曲线第一点横坐标,取值范围:[0, 1]。设置的值小于0时,按0处理;设置的值大于1时,按1处理。 | 2028| float y1 | 确定贝塞尔曲线第一点纵坐标。 | 2029| float x2 | 确定贝塞尔曲线第二点横坐标,取值范围:[0, 1]。设置的值小于0时,按0处理;设置的值大于1时,按1处理。 | 2030| float y2 | 确定贝塞尔曲线第二点纵坐标。 | 2031 2032**返回:** 2033 2034| 类型 | 说明 | 2035| -- | -- | 2036| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2037 2038### OH_ArkUI_Curve_CreateSpringCurve() 2039 2040``` 2041ArkUI_CurveHandle OH_ArkUI_Curve_CreateSpringCurve(float velocity, float mass, float stiffness, float damping) 2042``` 2043 2044**描述:** 2045 2046 2047构造弹簧曲线对象,曲线形状由弹簧参数决定,动画时长受animation、animateTo中的duration参数控制。 2048 2049**起始版本:** 12 2050 2051 2052**参数:** 2053 2054| 参数项 | 描述 | 2055| -- | -- | 2056| float velocity | 初始速度。是由外部因素对弹性动效产生的影响参数,其目的是保证对象从之前的运动状态平滑的过渡到弹性动效。该速度是归一化速度,其值等于动画开始时的实际速度除以动画属性改变值。 | 2057| float mass | 质量。弹性系统的受力对象,会对弹性系统产生惯性影响。质量越大,震荡的幅度越大,恢复到平衡位置的速度越慢。 | 2058| float stiffness | 刚度。是物体抵抗施加的力而形变的程度。在弹性系统中,刚度越大,抵抗变形的能力越强,恢复到平衡位置的速度就越快。 | 2059| float damping | 阻尼。用于描述系统在受到扰动后震荡及衰减的情形。阻尼越大,弹性运动的震荡次数越少、震荡幅度越小。 | 2060 2061**返回:** 2062 2063| 类型 | 说明 | 2064| -- | -- | 2065| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2066 2067### OH_ArkUI_Curve_CreateSpringMotion() 2068 2069``` 2070ArkUI_CurveHandle OH_ArkUI_Curve_CreateSpringMotion(float response, float dampingFraction, float overlapDuration) 2071``` 2072 2073**描述:** 2074 2075 2076构造弹性动画曲线对象。如果对同一对象的同一属性进行多个弹性动画,每个动画会替换掉前一个动画,并继承之前的速度。 2077 2078> **说明:** 2079> 2080> 动画时间由曲线参数决定,不受animation、animateTo中的duration参数控制。 2081 2082**起始版本:** 12 2083 2084 2085**参数:** 2086 2087| 参数项 | 描述 | 2088| -- | -- | 2089| float response | 弹簧自然振动周期,决定弹簧复位的速度。 | 2090| float dampingFraction | 阻尼系数。大于0小于1的值为欠阻尼,运动过程中会超出目标值;等于1为临界阻尼;大于1为过阻尼,运动过程中逐渐趋于目标值。 | 2091| float overlapDuration | 弹性动画衔接时长。发生动画继承时,如果前后两个弹性动画response不一致,response参数会在overlapDuration时间内平滑过渡。 | 2092 2093**返回:** 2094 2095| 类型 | 说明 | 2096| -- | -- | 2097| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2098 2099### OH_ArkUI_Curve_CreateResponsiveSpringMotion() 2100 2101``` 2102ArkUI_CurveHandle OH_ArkUI_Curve_CreateResponsiveSpringMotion(float response, float dampingFraction, float overlapDuration) 2103``` 2104 2105**描述:** 2106 2107 2108构造弹性跟手动画曲线对象,是springMotion的一种特例,仅默认参数不同,可与springMotion混合使用。 2109 2110> **说明:** 2111> 2112> 动画时间由曲线参数决定,不受animation、animateTo中的duration参数控制。 2113 2114**起始版本:** 12 2115 2116 2117**参数:** 2118 2119| 参数项 | 描述 | 2120| -- | -- | 2121| float response | 弹簧自然振动周期,决定弹簧复位的速度。 | 2122| float dampingFraction | 阻尼系数。大于0小于1的值为欠阻尼,运动过程中会超出目标值;等于1为临界阻尼;大于1为过阻尼,运动过程中逐渐趋于目标值。 | 2123| float overlapDuration | 弹性动画衔接时长。发生动画继承时,如果前后两个弹性动画response不一致,response参数会在overlapDuration时间内平滑过渡。 | 2124 2125**返回:** 2126 2127| 类型 | 说明 | 2128| -- | -- | 2129| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2130 2131### OH_ArkUI_Curve_CreateInterpolatingSpring() 2132 2133``` 2134ArkUI_CurveHandle OH_ArkUI_Curve_CreateInterpolatingSpring(float velocity, float mass, float stiffness, float damping) 2135``` 2136 2137**描述:** 2138 2139 2140构造插值器弹簧曲线对象,生成一条从0到1的动画曲线,实际动画值根据曲线进行插值计算。 2141 2142> **说明:** 2143> 2144> 动画时间由曲线参数决定,不受animation、animateTo中的duration参数控制。 2145 2146**起始版本:** 12 2147 2148 2149**参数:** 2150 2151| 参数项 | 描述 | 2152| -- | -- | 2153| float velocity | 初始速度。外部因素对弹性动效产生的影响参数,目的是保证对象从之前的运动状态平滑地过渡到弹性动效。该速度是归一化速度,其值等于动画开始时的实际速度除以动画属性改变值。 | 2154| float mass | 质量。弹性系统的受力对象,会对弹性系统产生惯性影响。质量越大,震荡的幅度越大,恢复到平衡位置的速度越慢。 | 2155| float stiffness | 刚度。表示物体抵抗施加的力而形变的程度。刚度越大,抵抗变形的能力越强,恢复到平衡位置的速度越快。 | 2156| float damping | 阻尼。用于描述系统在受到扰动后震荡及衰减的情形。阻尼越大,弹性运动的震荡次数越少、震荡幅度越小。 | 2157 2158**返回:** 2159 2160| 类型 | 说明 | 2161| -- | -- | 2162| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2163 2164### OH_ArkUI_Curve_CreateCustomCurve() 2165 2166``` 2167ArkUI_CurveHandle OH_ArkUI_Curve_CreateCustomCurve(void* userData, float (*interpolate)(float fraction, void* userdata)) 2168``` 2169 2170**描述:** 2171 2172 2173构造自定义曲线对象。 2174 2175**起始版本:** 12 2176 2177 2178**参数:** 2179 2180| 参数项 | 描述 | 2181| -- | -- | 2182| void* userData | 用户自定义数据。 | 2183| float (\*interpolate)(float fraction, void\* userdata) | 用户自定义的插值回调函数。fraction为动画开始时的插值输入x值。取值范围:[0,1]返回值为曲线的y值。取值范围:[0,1]。fraction等于0时,返回值为0对应动画起点,返回不为0,动画在起点处有跳变效果。fraction等于1时,返回值为1对应动画终点,返回值不为1将导致动画的终值不是状态变量的值,出现大于或者小于状态变量值,再跳变到状态变量值的效果。 | 2184 2185**返回:** 2186 2187| 类型 | 说明 | 2188|-----------------------| -- | 2189| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) | 曲线的插值对象指针。如果参数异常返回NULL。 | 2190 2191### OH_ArkUI_Curve_DisposeCurve() 2192 2193``` 2194void OH_ArkUI_Curve_DisposeCurve(ArkUI_CurveHandle curveHandle) 2195``` 2196 2197**描述:** 2198 2199 2200销毁自定义曲线对象。 2201 2202**起始版本:** 12 2203 2204 2205**参数:** 2206 2207| 参数项 | 描述 | 2208|---------------------------------------------------------------------| -- | 2209| [ArkUI_CurveHandle](capi-arkui-nativemodule-arkui-curve8h.md) curveHandle | 曲线的插值对象指针。 | 2210 2211### OH_ArkUI_CreateOpacityTransitionEffect() 2212 2213``` 2214ArkUI_TransitionEffect* OH_ArkUI_CreateOpacityTransitionEffect(float opacity) 2215``` 2216 2217**描述:** 2218 2219 2220创建组件转场时的透明度效果对象。 2221 2222**起始版本:** 12 2223 2224 2225**参数:** 2226 2227| 参数项 | 描述 | 2228| -- | -- | 2229| float opacity | 透明度,取值范围为[0, 1]。默认值为1。设置小于0的非法值按0处理,大于1的非法值按1处理,1表示不透明,0表示完全透明。 | 2230 2231**返回:** 2232 2233| 类型 | 说明 | 2234|-----------------------------| -- | 2235| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 组件转场时的透明度效果对象。 | 2236 2237### OH_ArkUI_CreateTranslationTransitionEffect() 2238 2239``` 2240ArkUI_TransitionEffect* OH_ArkUI_CreateTranslationTransitionEffect(ArkUI_TranslationOptions* translate) 2241``` 2242 2243**描述:** 2244 2245 2246创建组件转场时的平移效果对象。 2247 2248**起始版本:** 12 2249 2250 2251**参数:** 2252 2253| 参数项 | 描述 | 2254| -- | -- | 2255| [ArkUI_TranslationOptions](capi-arkui-nativemodule-arkui-translationoptions.md)* translate | 组件转场时的平移参数对象。 | 2256 2257**返回:** 2258 2259| 类型 | 说明 | 2260| -- | -- | 2261| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 组件转场时的平移效果对象。如果参数异常返回NULL。 | 2262 2263### OH_ArkUI_CreateScaleTransitionEffect() 2264 2265``` 2266ArkUI_TransitionEffect* OH_ArkUI_CreateScaleTransitionEffect(ArkUI_ScaleOptions* scale) 2267``` 2268 2269**描述:** 2270 2271 2272创建组件转场时的缩放效果对象。 2273 2274**起始版本:** 12 2275 2276 2277**参数:** 2278 2279| 参数项 | 描述 | 2280| -- | -- | 2281| [ArkUI_ScaleOptions](capi-arkui-nativemodule-arkui-scaleoptions.md)* scale | 组件转场时的缩放参数对象。 | 2282 2283**返回:** 2284 2285| 类型 | 说明 | 2286| -- | -- | 2287| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 组件转场时的缩放效果对象。如果参数异常返回NULL。 | 2288 2289### OH_ArkUI_CreateRotationTransitionEffect() 2290 2291``` 2292ArkUI_TransitionEffect* OH_ArkUI_CreateRotationTransitionEffect(ArkUI_RotationOptions* rotate) 2293``` 2294 2295**描述:** 2296 2297 2298创建组件转场时的旋转效果对象。 2299 2300**起始版本:** 12 2301 2302 2303**参数:** 2304 2305| 参数项 | 描述 | 2306| -- | -- | 2307| [ArkUI_RotationOptions](capi-arkui-nativemodule-arkui-rotationoptions.md)* rotate | 组件转场时的旋转参数对象。 | 2308 2309**返回:** 2310 2311| 类型 | 说明 | 2312| -- | -- | 2313| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 组件转场时的旋转效果对象。如果参数异常返回NULL。 | 2314 2315### OH_ArkUI_CreateMovementTransitionEffect() 2316 2317``` 2318ArkUI_TransitionEffect* OH_ArkUI_CreateMovementTransitionEffect(ArkUI_TransitionEdge edge) 2319``` 2320 2321**描述:** 2322 2323 2324创建组件平移效果对象。 2325 2326**起始版本:** 12 2327 2328 2329**参数:** 2330 2331| 参数项 | 描述 | 2332| -- | -- | 2333| [ArkUI_TransitionEdge](capi-native-type-h.md#arkui_transitionedge) edge | 平移类型。 | 2334 2335**返回:** 2336 2337| 类型 | 说明 | 2338| -- | -- | 2339| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 组件转场时的平移效果对象。如果参数异常返回NULL。 | 2340 2341### OH_ArkUI_CreateAsymmetricTransitionEffect() 2342 2343``` 2344ArkUI_TransitionEffect* OH_ArkUI_CreateAsymmetricTransitionEffect(ArkUI_TransitionEffect* appear, ArkUI_TransitionEffect* disappear) 2345``` 2346 2347**描述:** 2348 2349 2350创建非对称的转场效果对象。 2351 2352> **说明:** 2353> 2354> 如不通过asymmetric函数构造TransitionEffect,则表明该效果在组件出现和消失时均生效。 2355 2356**起始版本:** 12 2357 2358 2359**参数:** 2360 2361| 参数项 | 描述 | 2362| -- | -- | 2363| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* appear | 出现的转场效果。 | 2364| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* disappear | 消失的转场效果。 | 2365 2366**返回:** 2367 2368| 类型 | 说明 | 2369| -- | -- | 2370| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* | 非对称的转场效果对象。如果参数异常返回NULL。 | 2371 2372### OH_ArkUI_TransitionEffect_Dispose() 2373 2374``` 2375void OH_ArkUI_TransitionEffect_Dispose(ArkUI_TransitionEffect* effect) 2376``` 2377 2378**描述:** 2379 2380 2381销毁转场效果对象。 2382 2383**起始版本:** 12 2384 2385 2386**参数:** 2387 2388| 参数项 | 描述 | 2389| -- | -- | 2390| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* effect | 转场效果对象。 | 2391 2392### OH_ArkUI_TransitionEffect_Combine() 2393 2394``` 2395int32_t OH_ArkUI_TransitionEffect_Combine(ArkUI_TransitionEffect* firstEffect, ArkUI_TransitionEffect* secondEffect) 2396``` 2397 2398**描述:** 2399 2400 2401设置转场效果链式组合,以形成包含多种转场效果的TransitionEffect。 2402 2403**起始版本:** 12 2404 2405 2406**参数:** 2407 2408| 参数项 | 描述 | 2409| -- | -- | 2410| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* firstEffect | 转场效果。 | 2411| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* secondEffect | 需要链式转场效果。 | 2412 2413**返回:** 2414 2415| 类型 | 说明 | 2416| -- | -- | 2417| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 2418 2419### OH_ArkUI_TransitionEffect_SetAnimation() 2420 2421``` 2422int32_t OH_ArkUI_TransitionEffect_SetAnimation(ArkUI_TransitionEffect* effect, ArkUI_AnimateOption* animation) 2423``` 2424 2425**描述:** 2426 2427 2428设置转场效果动画参数。 2429 2430> **说明:** 2431> 2432> 如果通过combine进行转场效果的组合,前一转场效果的动画参数也可用于后一转场效果。 2433 2434**起始版本:** 12 2435 2436 2437**参数:** 2438 2439| 参数项 | 描述 | 2440| -- | -- | 2441| [ArkUI_TransitionEffect](capi-arkui-nativemodule-arkui-transitioneffect.md)* effect | 转场效果。 | 2442| [ArkUI_AnimateOption](capi-arkui-nativemodule-arkui-animateoption.md)* animation | 属性显示动画效果相关参数。 | 2443 2444**返回:** 2445 2446| 类型 | 说明 | 2447| -- | -- | 2448| int32_t | 错误码。<br> [ARKUI_ERROR_CODE_NO_ERROR](capi-native-type-h.md#arkui_errorcode) 成功。<br> [ARKUI_ERROR_CODE_PARAM_INVALID](capi-native-type-h.md#arkui_errorcode) 函数参数异常。 | 2449 2450 2451