文档管理中心
我的

您当前正在浏览HarmonyOS最新文档,覆盖已发布的所有API版本,可在API参考中筛选您使用的API版本。详细的版本配套关系请参考版本说明。

指南与API参考API参考应用框架ArkUI(方舟UI框架)C API结构体OH_NativeXComponent_Callback

OH_NativeXComponent_Callback

Phone12+PC/2in113+Tablet12+TV19+Wearable18+
收起
自动换行
深色代码主题
复制
  1. typedef struct OH_NativeXComponent_Callback {...} OH_NativeXComponent_Callback

概述

OH_NativeXComponent_Callback用于注册XComponent的Surface生命周期(创建、改变、销毁)和触摸事件回调。适用于需要在Native侧感知Surface状态变化并处理用户触摸交互的场景。

起始版本: 8

相关模块: OH_NativeXComponent Native XComponent

所在头文件: native_interface_xcomponent.h

汇总

成员函数说明

OnSurfaceCreated()

Phone12+PC/2in113+Tablet12+TV19+Wearable18+
收起
自动换行
深色代码主题
复制
  1. void (*OnSurfaceCreated)(OH_NativeXComponent* component, void* window)

描述:

当Surface创建时调用。

起始版本: 8

参数:

展开
参数项 描述
OH_NativeXComponent* component 表示指向OH_NativeXComponent实例的指针。
void* window

表示NativeWindow句柄。

通过XComponent生命周期获取的NativeWindow本身由系统侧持有了一次引用计数,并会在OnSurfaceDestroyed回调触发之后将引用计数减一,引用计数归零后NativeWindow将被释放。

OnSurfaceChanged()

Phone12+PC/2in113+Tablet12+TV19+Wearable18+
收起
自动换行
深色代码主题
复制
  1. void (*OnSurfaceChanged)(OH_NativeXComponent* component, void* window)

描述:

当Surface尺寸发生改变时调用。

起始版本: 8

参数:

展开
参数项 描述
OH_NativeXComponent* component 表示指向OH_NativeXComponent实例的指针。
void* window 表示NativeWindow句柄。该句柄在Surface尺寸或格式发生变化时传入,开发者可通过该句柄感知Surface的最新状态并更新渲染配置。

OnSurfaceDestroyed()

Phone12+PC/2in113+Tablet12+TV19+Wearable18+
收起
自动换行
深色代码主题
复制
  1. void (*OnSurfaceDestroyed)(OH_NativeXComponent* component, void* window)

描述:

当Surface被销毁时调用。

起始版本: 8

参数:

展开
参数项 描述
OH_NativeXComponent* component 表示指向OH_NativeXComponent实例的指针。
void* window 表示NativeWindow句柄。此回调触发后,系统侧持有的NativeWindow引用计数将减一,引用计数归零后NativeWindow将被释放,请勿在此回调之后继续使用该window句柄。

DispatchTouchEvent()

Phone12+PC/2in113+Tablet12+TV19+Wearable18+
收起
自动换行
深色代码主题
复制
  1. void (*DispatchTouchEvent)(OH_NativeXComponent* component, void* window)

描述:

当触摸事件被分发时调用,开发者可在此回调中获取触摸事件数据以实现自定义交互逻辑(如手势识别、自定义绘制等)。

起始版本: 8

参数:

展开
参数项 描述
OH_NativeXComponent* component 表示指向OH_NativeXComponent实例的指针。
void* window

表示NativeWindow句柄。

通过XComponent生命周期获取的NativeWindow本身由系统侧持有了一次引用计数,并会在OnSurfaceDestroyed回调触发之后将引用计数减一,引用计数归零后NativeWindow将被释放。