drawable_descriptor.h
概述
提供NativeDrawableDescriptor接口的类型定义。
引用文件: <arkui/drawable_descriptor.h>
库: libace_ndk.z.so
系统能力: SystemCapability.ArkUI.ArkUI.Full
起始版本: 12
相关模块: ArkUI_NativeModule
相关示例: DrawableDescriptorSample
汇总
结构体
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| ArkUI_DrawableDescriptor | ArkUI_DrawableDescriptor | 定义DrawableDescriptor对象。 |
| OH_PixelmapNative* | OH_PixelmapNativeHandle | 定义OH_PixelmapNative对象指针类型。 |
| ArkUI_Node* | ArkUI_NodeHandle | 定义ArkUI native组件实例对象指针定义。 |
| ArkUI_DrawableDescriptor_AnimationController | ArkUI_DrawableDescriptor_AnimationController | 定义DrawableDescriptor动图控制器对象。 |
枚举
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| DrawableDescriptor_AnimationStatus | DrawableDescriptor_AnimationStatus | 定义DrawableDescriptor动图的播放状态。 |
函数
枚举类型说明
DrawableDescriptor_AnimationStatus
enum DrawableDescriptor_AnimationStatus
描述:
定义DrawableDescriptor动图的播放状态。
起始版本: 22
| 枚举项 | 描述 |
|---|---|
| DRAWABLE_DESCRIPTOR_ANIMATION_STATUS_INITIAL = 0 | 动画初始状态。 |
| DRAWABLE_DESCRIPTOR_ANIMATION_STATUS_RUNNING = 1 | 动画处于播放状态。 |
| DRAWABLE_DESCRIPTOR_ANIMATION_STATUS_PAUSED = 2 | 动画处于暂停状态。 |
| DRAWABLE_DESCRIPTOR_ANIMATION_STATUS_STOPPED = 3 | 动画处于停止状态。 |
函数说明
OH_ArkUI_DrawableDescriptor_CreateFromPixelMap()
ArkUI_DrawableDescriptor* OH_ArkUI_DrawableDescriptor_CreateFromPixelMap(OH_PixelmapNativeHandle pixelMap)
描述:
使用PixelMap创建DrawableDescriptor对象。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| OH_PixelmapNativeHandle pixelMap | PixelMap对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| ArkUI_DrawableDescriptor* | 返回DrawableDescriptor对象指针。 |
OH_ArkUI_DrawableDescriptor_CreateFromAnimatedPixelMap()
ArkUI_DrawableDescriptor* OH_ArkUI_DrawableDescriptor_CreateFromAnimatedPixelMap(OH_PixelmapNativeHandle* array, int32_t size)
描述:
使用PixelMap图片数组创建DrawableDescriptor对象。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| OH_PixelmapNativeHandle* array | PixelMap图片数组对象指针。 |
| int32_t size | PixelMap图片数组大小。 |
返回:
| 类型 | 说明 |
|---|---|
| ArkUI_DrawableDescriptor* | 返回DrawableDescriptor对象指针。 |
OH_ArkUI_DrawableDescriptor_Dispose()
void OH_ArkUI_DrawableDescriptor_Dispose(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
销毁DrawableDescriptor对象指针。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
OH_ArkUI_DrawableDescriptor_GetStaticPixelMap()
OH_PixelmapNativeHandle OH_ArkUI_DrawableDescriptor_GetStaticPixelMap(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
获取PixelMap图片对象指针。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| OH_PixelmapNativeHandle | PixelMap对象指针。 |
OH_ArkUI_DrawableDescriptor_GetAnimatedPixelMapArray()
OH_PixelmapNativeHandle* OH_ArkUI_DrawableDescriptor_GetAnimatedPixelMapArray(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
获取用于播放动画的PixelMap图片数组数据。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| OH_PixelmapNativeHandle* | PixelMap图片数组指针。 |
OH_ArkUI_DrawableDescriptor_GetAnimatedPixelMapArraySize()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimatedPixelMapArraySize(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
获取用于播放动画的PixelMap图片数组数据。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | PixelMap图片数组大小。 |
OH_ArkUI_DrawableDescriptor_SetAnimationDuration()
void OH_ArkUI_DrawableDescriptor_SetAnimationDuration(ArkUI_DrawableDescriptor* drawableDescriptor, int32_t duration)
描述:
设置PixelMap图片数组播放总时长。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| int32_t duration | 播放总时长,单位毫秒。 |
OH_ArkUI_DrawableDescriptor_GetAnimationDuration()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimationDuration(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
获取PixelMap图片数组播放总时长。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 播放总时长,单位毫秒。 |
OH_ArkUI_DrawableDescriptor_SetAnimationIteration()
void OH_ArkUI_DrawableDescriptor_SetAnimationIteration(ArkUI_DrawableDescriptor* drawableDescriptor, int32_t iteration)
描述:
设置PixelMap图片数组播放次数。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| int32_t iteration | 播放次数。 |
OH_ArkUI_DrawableDescriptor_GetAnimationIteration()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimationIteration(ArkUI_DrawableDescriptor* drawableDescriptor)
描述:
获取PixelMap图片数组播放次数。
起始版本: 12
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 播放次数。 |
OH_ArkUI_DrawableDescriptor_SetAnimationFrameDurations()
int32_t OH_ArkUI_DrawableDescriptor_SetAnimationFrameDurations(ArkUI_DrawableDescriptor* drawableDescriptor, uint32_t* durations, size_t size)
描述:
设置动图中的单帧播放时间。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| uint32_t* durations | 动图中的单帧播放时间数组,单位毫秒。 不设置则按照总时间播放。设置的优先级高于duration,即同时设置了duration和frameDurations时,duration不生效。 数组大小必须与PixelMap图片数组大小相同。 每帧播放时间取值范围:[0, +∞)。 |
| size_t size | 数组大小。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_GetAnimationFrameDurations()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimationFrameDurations(ArkUI_DrawableDescriptor* drawableDescriptor, uint32_t* durations, size_t* size)
描述:
获取动图中的单帧播放时间。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| uint32_t* durations | 动图中的单帧播放时间数组。 |
| size_t* size | 数组大小。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_SetAnimationAutoPlay()
int32_t OH_ArkUI_DrawableDescriptor_SetAnimationAutoPlay(ArkUI_DrawableDescriptor* drawableDescriptor, uint32_t autoPlay)
描述:
设置动图是否自动播放。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| uint32_t autoPlay | 是否自动播放。 1表示自动播放,0表示不自动播放。 默认值为1。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_GetAnimationAutoPlay()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimationAutoPlay(ArkUI_DrawableDescriptor* drawableDescriptor, uint32_t* autoPlay)
描述:
获取动图是否自动播放。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| uint32_t* autoPlay | 是否自动播放。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_CreateAnimationController()
int32_t OH_ArkUI_DrawableDescriptor_CreateAnimationController(ArkUI_DrawableDescriptor* drawableDescriptor, ArkUI_NodeHandle node, ArkUI_DrawableDescriptor_AnimationController** controller)
描述:
创建动图控制器。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor* drawableDescriptor | DrawableDescriptor对象指针。 |
| ArkUI_NodeHandle node | 组件节点指针。 |
| ArkUI_DrawableDescriptor_AnimationController** controller | DrawableDescriptor动图控制器对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_DisposeAnimationController()
void OH_ArkUI_DrawableDescriptor_DisposeAnimationController(ArkUI_DrawableDescriptor_AnimationController* controller)
描述:
销毁动图控制器。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
OH_ArkUI_DrawableDescriptor_StartAnimation()
int32_t OH_ArkUI_DrawableDescriptor_StartAnimation(ArkUI_DrawableDescriptor_AnimationController* controller);
描述:
从首帧开始播放。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_StopAnimation()
int32_t OH_ArkUI_DrawableDescriptor_StopAnimation(ArkUI_DrawableDescriptor_AnimationController* controller);
描述:
停止动图播放并回到首帧。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_ResumeAnimation()
int32_t OH_ArkUI_DrawableDescriptor_ResumeAnimation(ArkUI_DrawableDescriptor_AnimationController* controller);
描述:
从当前帧恢复动图播放。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_PauseAnimation()
int32_t OH_ArkUI_DrawableDescriptor_PauseAnimation(ArkUI_DrawableDescriptor_AnimationController* controller);
描述:
暂停动图的播放,保持在当前帧。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |
OH_ArkUI_DrawableDescriptor_GetAnimationStatus()
int32_t OH_ArkUI_DrawableDescriptor_GetAnimationStatus(ArkUI_DrawableDescriptor_AnimationController* controller, DrawableDescriptor_AnimationStatus* status);
描述:
获取动图的播放状态。
起始版本: 22
参数:
| 参数项 | 描述 |
|---|---|
| ArkUI_DrawableDescriptor_AnimationController* controller | DrawableDescriptor动图控制器对象指针。 |
| DrawableDescriptor_AnimationStatus* status | DrawableDescriptor动图的播放状态。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | 错误码。 ARKUI_ERROR_CODE_NO_ERROR 成功。 ARKUI_ERROR_CODE_INVALID_PARAM 输入参数错误。 |