1# Common Event Callback 2 3>**NOTE** 4> 5>The initial APIs of this module are supported since API version 12. Newly added APIs will be marked with a superscript to indicate their earliest API version. 6 7## UICommonEvent 8Implements a common event callback. If the input parameter of an API is **undefined**, the corresponding event callback is reset. 9### setOnClick 10 11setOnClick(callback: Callback\<ClickEvent> | undefined): void 12 13Set the callback for the [click event](./ts-universal-events-click.md#click-event). 14 15**Atomic service API**: This API can be used in atomic services since API version 12. 16 17**System capability**: SystemCapability.ArkUI.ArkUI.Full 18 19**Parameters** 20 21| Name | Type | Mandatory | Description | 22| ------ | ------ | ---- | -------------------------- | 23| callback | [Callback](./ts-types.md#callback12)<[ClickEvent](./ts-universal-events-click.md#clickevent)> \| undefined | Yes | Callback for the click event. | 24 25### setOnTouch 26 27setOnTouch(callback: Callback\<TouchEvent> | undefined): void 28 29Sets the callback for the [touch event](./ts-universal-events-touch.md#touch-event). 30 31**Atomic service API**: This API can be used in atomic services since API version 12. 32 33**System capability**: SystemCapability.ArkUI.ArkUI.Full 34 35**Parameters** 36 37| Name | Type | Mandatory | Description | 38| ------ | ------ | ---- | -------------------------- | 39| callback | [Callback](./ts-types.md#callback12)<[TouchEvent](./ts-universal-events-touch.md#touchevent)> \| undefined | Yes | Callback for the touch event. | 40 41 42### setOnAppear 43 44setOnAppear(callback: Callback\<void> | undefined): void 45 46Sets the callback for the [onAppear](./ts-universal-events-show-hide.md#onappear) event. 47 48**Atomic service API**: This API can be used in atomic services since API version 12. 49 50**System capability**: SystemCapability.ArkUI.ArkUI.Full 51 52**Parameters** 53 54| Name | Type | Mandatory | Description | 55| ------ | ------ | ---- | -------------------------- | 56| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | Yes | Callback for the **onAppear** event. | 57 58 59### setOnDisappear 60 61setOnDisappear(callback: Callback\<void> | undefined): void 62 63Sets the callback for the [onDisappear](./ts-universal-events-show-hide.md#ondisappear) event. 64 65**Atomic service API**: This API can be used in atomic services since API version 12. 66 67**System capability**: SystemCapability.ArkUI.ArkUI.Full 68 69**Parameters** 70 71| Name | Type | Mandatory | Description | 72| ------ | ------ | ---- | -------------------------- | 73| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | Yes | Callback for the **onDisappear** event. | 74 75### setOnKeyEvent 76 77setOnKeyEvent(callback: Callback\<KeyEvent> | undefined): void 78 79Sets the callback for the [key event](./ts-universal-events-key.md#key-event). 80 81**Atomic service API**: This API can be used in atomic services since API version 12. 82 83**System capability**: SystemCapability.ArkUI.ArkUI.Full 84 85**Parameters** 86 87| Name | Type | Mandatory | Description | 88| ------ | ------ | ---- | -------------------------- | 89| callback | [Callback](./ts-types.md#callback12)<[KeyEvent](./ts-universal-events-key.md#keyevent)> \| undefined | Yes | Callback for the key event. | 90 91### setOnFocus 92 93setOnFocus(callback: Callback\<void> | undefined): void 94 95Sets the callback for the [onFocus](./ts-universal-focus-event.md#onfocus) event. 96 97**Atomic service API**: This API can be used in atomic services since API version 12. 98 99**System capability**: SystemCapability.ArkUI.ArkUI.Full 100 101**Parameters** 102 103| Name | Type | Mandatory | Description | 104| ------ | ------ | ---- | -------------------------- | 105| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | Yes | Callback for the **onFocus** event. | 106 107### setOnBlur 108 109setOnBlur(callback: Callback\<void> | undefined): void 110 111Sets the callback for the [onBlur](./ts-universal-focus-event.md#onblur) event. 112 113**Atomic service API**: This API can be used in atomic services since API version 12. 114 115**System capability**: SystemCapability.ArkUI.ArkUI.Full 116 117**Parameters** 118 119| Name | Type | Mandatory | Description | 120| ------ | ------ | ---- | -------------------------- | 121| callback | [Callback](./ts-types.md#callback12)\<void> \| undefined | Yes | Callback for the **onBlur** event. | 122 123### setOnHover 124 125setOnHover(callback: HoverCallback | undefined): void 126 127Sets the callback for the [onHover](./ts-universal-mouse-key.md#onhover) event. 128 129**Atomic service API**: This API can be used in atomic services since API version 12. 130 131**System capability**: SystemCapability.ArkUI.ArkUI.Full 132 133**Parameters** 134 135| Name | Type | Mandatory | Description | 136| ------ | ------ | ---- | -------------------------- | 137| callback | [HoverCallback](./ts-types.md#hovercallback12) \| undefined | Yes | Callback for the **onHover** event. | 138 139### setOnMouse 140 141setOnMouse(callback: Callback\<MouseEvent> | undefined): void 142 143Sets the callback for the [onMouse](./ts-universal-mouse-key.md#onmouse) event. 144 145**Atomic service API**: This API can be used in atomic services since API version 12. 146 147**System capability**: SystemCapability.ArkUI.ArkUI.Full 148 149**Parameters** 150 151| Name | Type | Mandatory | Description | 152| ------ | ------ | ---- | -------------------------- | 153| callback | [Callback](./ts-types.md#callback12)<[MouseEvent](./ts-universal-mouse-key.md#mouseevent)> \| undefined | Yes | Callback for the **onMouse** event. | 154 155### setOnSizeChange 156 157setOnSizeChange(callback: SizeChangeCallback | undefined): void 158 159Sets the callback for the [onSizeChange](./ts-universal-component-size-change-event.md#onsizechange) event. 160 161**Atomic service API**: This API can be used in atomic services since API version 12. 162 163**System capability**: SystemCapability.ArkUI.ArkUI.Full 164 165**Parameters** 166 167| Name | Type | Mandatory | Description | 168| ------ | ------ | ---- | -------------------------- | 169| callback | [SizeChangeCallback](./ts-universal-component-size-change-event.md#sizechangecallback) \| undefined | Yes | Callback for the **onSizeChange** event. | 170 171### setOnVisibleAreaApproximateChange 172 173setOnVisibleAreaApproximateChange(options: VisibleAreaEventOptions, event: VisibleAreaChangeCallback | undefined): void 174 175Sets the [onVisibleAreaChange](./ts-universal-component-visible-area-change-event.md#onvisibleareachange) callback that limits the callback interval. 176 177**Atomic service API**: This API can be used in atomic services since API version 12. 178 179**System capability**: SystemCapability.ArkUI.ArkUI.Full 180 181**Parameters** 182 183| Name | Type | Mandatory | Description | 184| ------ | ------ | ---- | -------------------------- | 185| options | [VisibleAreaEventOptions](./ts-types.md#visibleareaeventoptions12) | Yes | Options of visible area changes. | 186| event | [VisibleAreaChangeCallback](./ts-types.md#visibleareachangecallback12) \| undefined | Yes | Callback for the **onVisibleAreaChange** event. Called when the ratio of the component's visible area to its total area is greater than or less than the threshold. | 187 188>**NOTE** 189> 190> This callback is not a real-time callback. The actual callback interval may be different from the expected interval. 191> The interval between **onVisibleAreaChange** callbacks is greater than or equal to the expected update interval. If the expected interval set is too short, the actual callback interval is subject to the system load. 192