cocosCreator节点添加双击事件

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const { ccclass, property } = cc._decorator;

@ccclass
export default class DoubleClickHandler extends cc.Component {
private lastClickTime: number = 0;
private readonly doubleClickInterval: number = 300; // 两次点击的时间间隔

onLoad() {
this.node.on(cc.Node.EventType.TOUCH_END, this.onTouchEnd, this);
}

onTouchEnd(event: cc.Event.EventTouch) {
const currentTime = new Date().getTime(); // 获取点击时的系统时间,时间戳
if (currentTime - this.lastClickTime <= this.doubleClickInterval) {
// your code
console.log("Double click!");
}
this.lastClickTime = currentTime; // 记录下点击时的系统时间
}
}

在上面的代码中,我们创建了一个名为 DoubleClickHandler 的组件,监听节点的
TOUCH_END事件。当触摸结束时,它会计算两次触摸之间的时间间隔,如果时间间隔小于设定的阈值(doubleClickInterval),则会执行双击操作。