游戏列表数据, 比如游戏背包, 排行榜等界面, 当需要给其中的项目添加点击事件时:
1.在 js 中绑定上点击事件的方式:
initBoard: function () {
for (let i = 0; i < this.node.children.length; i++) {
let node = this.node.children[I];
this.bindClickEvent(node.getComponent(cc.Button), i);
}
},
bindClickEvent: function (button, index) {
var clickEventHandler = new cc.Component.EventHandler();
//这个 node 节点是你的事件处理代码组件所属的节点
clickEventHandler.target = this.node;
//这个是代码文件名
clickEventHandler.component = "CircleBoard";
clickEventHandler.handler = "callback";
clickEventHandler.customEventData = index;
button.clickEvents.push(clickEventHandler);
},
//点击事件回调 target ==》node, customEventData ==》 index
callback: function (target, customEventData) {
this.nodeList[customEventData].getComponent("Circle").updateCircle();
},
2.当然,也可以适用直接在视图中绑定的方式,也是使用最多的方式:
bind.png
实现效果如下:
bindClickEvent.gif
网友评论