cocos-creator使用记录12_按钮事件

1.按钮的组件
1.1.按钮按下事件
将按钮事件设置为1
ClickEvents:1
则会出现如下
[0]   cc.Node         
      脚本所在的节点  脚本名字  函数名字
CustomEventData  函数参数


若没有设置函数参数,则只需如下
onButtonClick: function() {
    cc.log(customEventData):
}


若设置了函数参数,则需要如下定义要调用的函数
onButtonClick: function(event, customEventData) {
    cc.log(customEventData):
}


1.2.按钮按下时状态变化
Transition: 
NONE         
COLOR   纯色切换
SPRITE  图片切换
SCALE   按钮缩放


2.在脚本中动态添加按钮
以下是关卡界面的脚本片段
var btnNode = cc.instantiate(this.levelBtnPrefab); //按钮的预制(预制中无法保存按钮事件)
this.scrollViewContentNode.addChild(btnNode);
btnNode.setPosition(pos[i % 12][0] + 750 * Math.floor(i / 12), pos[i % 12][1]);
//绑定事件
var clickEventHandler = new cc.Component.EventHandler();
clickEventHandler.target = this.node;
clickEventHandler.component = "Level"; //脚本名字
clickEventHandler.handler = "onLevelBtn"; //点击的回调函数
clickEventHandler.customEventData = (i + 1).toString(); //参数
var btn = btnNode.getComponent(cc.Button);
btn.clickEvents.push(clickEventHandler);

猜你喜欢

转载自blog.csdn.net/haibo19981/article/details/80452347