super-hero/assets/cc-common/cc-ui/UmSliderCustom.ts

32 lines
903 B
TypeScript
Raw Permalink Normal View History

2024-05-08 04:03:33 -07:00
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);
}
}