1# 设置事件回调 2<!--Kit: ArkUI--> 3<!--Subsystem: ArkUI--> 4<!--Owner: @jiangtao92--> 5<!--Designer: @piggyguy--> 6<!--Tester: @songyanhong--> 7<!--Adviser: @HelloCrease--> 8 9>**说明:** 10> 11>本模块首批接口从API version 12开始支持,后续版本的新增接口,采用上角标单独标记接口的起始版本。 12 13## UICommonEvent 14用于设置基础事件回调。方法入参为undefined的时候,重置对应的事件回调。 15### setOnClick 16 17setOnClick(callback: Callback\<ClickEvent> | undefined): void 18 19设置[点击事件](./ts-universal-events-click.md)的回调。 20 21**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 22 23**系统能力:** SystemCapability.ArkUI.ArkUI.Full 24 25**参数:** 26 27| 参数名 | 类型 | 必填 | 说明 | 28| ------ | ------ | ---- | -------------------------- | 29| callback | [Callback](./ts-types.md#callback12)<[ClickEvent](./ts-universal-events-click.md#clickevent对象说明)> \| undefined | 是 | 点击事件的回调函数。 | 30 31### setOnTouch 32 33setOnTouch(callback: Callback\<TouchEvent> | undefined): void 34 35设置[触摸事件](./ts-universal-events-touch.md)的回调。 36 37**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 38 39**系统能力:** SystemCapability.ArkUI.ArkUI.Full 40 41**参数:** 42 43| 参数名 | 类型 | 必填 | 说明 | 44| ------ | ------ | ---- | -------------------------- | 45| callback | [Callback](./ts-types.md#callback12)<[TouchEvent](./ts-universal-events-touch.md#touchevent对象说明)> \| undefined | 是 | 触摸事件的回调函数。 | 46 47 48### setOnAppear 49 50setOnAppear(callback: Callback\<void> | undefined): void 51 52设置[onAppear](./ts-universal-events-show-hide.md#onappear)挂载显示事件的回调。 53 54**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 55 56**系统能力:** SystemCapability.ArkUI.ArkUI.Full 57 58**参数:** 59 60| 参数名 | 类型 | 必填 | 说明 | 61| ------ | ------ | ---- | -------------------------- | 62| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | 是 | 挂载显示事件的回调函数。 | 63 64 65### setOnDisappear 66 67setOnDisappear(callback: Callback\<void> | undefined): void 68 69设置[onDisAppear](./ts-universal-events-show-hide.md#ondisappear)卸载消失事件的回调。 70 71**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 72 73**系统能力:** SystemCapability.ArkUI.ArkUI.Full 74 75**参数:** 76 77| 参数名 | 类型 | 必填 | 说明 | 78| ------ | ------ | ---- | -------------------------- | 79| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | 是 | 卸载消失事件的回调。 | 80 81### setOnKeyEvent 82 83setOnKeyEvent(callback: Callback\<KeyEvent> | undefined): void 84 85设置[按键事件](./ts-universal-events-key.md)的回调。 86 87**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 88 89**系统能力:** SystemCapability.ArkUI.ArkUI.Full 90 91**参数:** 92 93| 参数名 | 类型 | 必填 | 说明 | 94| ------ | ------ | ---- | -------------------------- | 95| callback | [Callback](./ts-types.md#callback12)<[KeyEvent](./ts-universal-events-key.md#keyevent对象说明)> \| undefined | 是 | 按键事件的回调函数。 | 96 97### setOnFocus 98 99setOnFocus(callback: Callback\<void> | undefined): void 100 101设置[onFocus](./ts-universal-focus-event.md#onfocus)获焦事件的回调。 102 103**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 104 105**系统能力:** SystemCapability.ArkUI.ArkUI.Full 106 107**参数:** 108 109| 参数名 | 类型 | 必填 | 说明 | 110| ------ | ------ | ---- | -------------------------- | 111| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | 是 | 获焦事件的回调。 | 112 113### setOnBlur 114 115setOnBlur(callback: Callback\<void> | undefined): void 116 117设置[onBlur](./ts-universal-focus-event.md#onblur)失焦事件的回调。 118 119**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 120 121**系统能力:** SystemCapability.ArkUI.ArkUI.Full 122 123**参数:** 124 125| 参数名 | 类型 | 必填 | 说明 | 126| ------ | ------ | ---- | -------------------------- | 127| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | 是 | 失焦事件的回调。 | 128 129### setOnHover 130 131setOnHover(callback: HoverCallback | undefined): void 132 133设置[onHover](./ts-universal-events-hover.md#onhover)悬浮事件的回调。 134 135**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 136 137**系统能力:** SystemCapability.ArkUI.ArkUI.Full 138 139**参数:** 140 141| 参数名 | 类型 | 必填 | 说明 | 142| ------ | ------ | ---- | -------------------------- | 143| callback | [HoverCallback](#hovercallback) \| undefined | 是 | 悬浮事件的回调函数。 | 144 145### setOnMouse 146 147setOnMouse(callback: Callback\<MouseEvent> | undefined): void 148 149设置[onMouse](./ts-universal-mouse-key.md#onmouse)鼠标事件的回调。 150 151**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 152 153**系统能力:** SystemCapability.ArkUI.ArkUI.Full 154 155**参数:** 156 157| 参数名 | 类型 | 必填 | 说明 | 158| ------ | ------ | ---- | -------------------------- | 159| callback | [Callback](./ts-types.md#callback12)<[MouseEvent](./ts-universal-mouse-key.md#mouseevent对象说明)> \| undefined | 是 | 鼠标事件的回调函数。 | 160 161### setOnSizeChange 162 163setOnSizeChange(callback: SizeChangeCallback | undefined): void 164 165设置[onSizeChange](./ts-universal-component-size-change-event.md#onsizechange)组件区域变化事件的回调。 166 167**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 168 169**系统能力:** SystemCapability.ArkUI.ArkUI.Full 170 171**参数:** 172 173| 参数名 | 类型 | 必填 | 说明 | 174| ------ | ------ | ---- | -------------------------- | 175| callback | [SizeChangeCallback](./ts-universal-component-size-change-event.md#sizechangecallback) \| undefined | 是 | 组件区域变化事件的回调函数。 | 176 177### setOnVisibleAreaApproximateChange 178 179setOnVisibleAreaApproximateChange(options: VisibleAreaEventOptions, event: VisibleAreaChangeCallback | undefined): void 180 181设置限制回调间隔的[onVisibleAreaChange](./ts-universal-component-visible-area-change-event.md#onvisibleareachange)可见区域变化事件的回调。 182 183**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 184 185**系统能力:** SystemCapability.ArkUI.ArkUI.Full 186 187**参数:** 188 189| 参数名 | 类型 | 必填 | 说明 | 190| ------ | ------ | ---- | -------------------------- | 191| options | [VisibleAreaEventOptions](./ts-universal-component-visible-area-change-event.md#visibleareaeventoptions12) | 是 | 可见区域变化相关的参数。 | 192| event | [VisibleAreaChangeCallback](./ts-universal-component-visible-area-change-event.md#visibleareachangecallback12) \| undefined | 是 | 可见区域变化事件的回调函数。当组件可见面积与自身面积的比值接近options中设置的阈值时触发该回调。 | 193 194>**说明:** 195> 196> 此接口与[onVisibleAreaChange](./ts-universal-component-visible-area-change-event.md#onvisibleareachange)接口存在如下差异,onVisibleAreaChange在每一帧都会进行可见区域比例的计算,如果注册节点太多,系统功耗存在劣化。此接口降低了可见区域比例计算的频度,计算间隔由[VisibleAreaEventOptions](./ts-universal-component-visible-area-change-event.md#visibleareaeventoptions12)的expectedUpdateInterval参数决定。 197> 198> 当前接口的可见区域回调阈值默认包含0。例如,开发者设置回调阈值为[0.5],实际生效的阈值为[0.0, 0.5]。 199 200## HoverCallback 201 202hover事件的回调类型。 203 204type HoverCallback = (isHover: boolean, event: HoverEvent)=> void 205 206**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 207 208**系统能力:** SystemCapability.ArkUI.ArkUI.Full 209 210**参数:** 211 212| 参数名 | 类型 | 必填 | 说明 | 213| ------------- | ---------------------- |---------------------| --------------------------------------- | 214| isHover | boolean | 是 |是否处于hover状态,true表示处于hover状态,false表示不在hover状态。 | 215| event | [HoverEvent](ts-universal-events-hover.md#hoverevent10对象说明) | 是 | 获取鼠标或手写笔悬浮的位置坐标。 |