import { _decorator, Color, EventTouch, Slider, Sprite } from 'cc'; const { ccclass, property } = _decorator; @ccclass('UmSliderCustom') export class UmSliderCustom extends Slider { public onTouchEnded: ((event?: EventTouch) => void) | undefined; public onTouchCancelled: ((event?: EventTouch) => void) | undefined; @property(Sprite) public bg: Sprite = null!; _onTouchEnded(event?: EventTouch) { super._onTouchEnded(event); this.onTouchEnded?.(event); } protected _onTouchCancelled(event?: EventTouch) { super._onTouchCancelled(event); this.onTouchCancelled?.(event); } public setOpacity(opacity: number) { this.handle?.setOpacity(opacity); this.bg?.setOpacity(opacity); } public setColor(color: Color) { this.bg?.setColor(color); this.handle?.getComponent(Sprite)?.setColor(color); } }