您的位置:首页 > 移动开发 > Cocos引擎

cocos js 踩坑旅程 之ccui.Button 那点事

2015-11-10 16:48 2867 查看
之前工作的时候一直使用的是lua脚本语言,最近刚刚接触cocos-JS发现要踩的坑还有很多,再次将我踩过的一些坑写出来。转入正题在cocosjs中创建一个button(按钮)大体可以分为3种方法。1.创建一个Menu。2.使用cocostudio编辑器编辑ui界面导入到工程中通过getChildByTag(),getChildByName()获取这个button。3.直接 new ccui.Button();但是 会出现报错 ccui is not defined,原因就是没有引入 “extensions”模块,所以需要在project.json中的 modules中添加 extensions ,ex:modules:["cocos2d-x","extensions"];修改之后就可以正常使用ccui
var btn_close= new ccui.Button(res.Btn_close_normal,res.Btn_close_selected);
//btn_close.loadTextureDisabled(res.HelloWorld_png);
//设置导入资源true
//btn_close.loadTextureNormal(res.HelloWorld_png);
//btn_close.setTouchEnabled(false);设置按钮能否点击
//btn_close.setScale9Enabled(true);//设置按钮能否进行scale9缩放,需要设置按钮的尺寸
btn_close.setPosition(size.width/2,size.height/2);
btn_close.setPressedActionEnabled(false);//设置是否伴随点击缩放按钮图片
btn_close.setTitleText("Title Button");//在按钮上方添加一个label.
//btn_close.setContentSize(cc.size(150, 48));
//btn_close.addTouchEventListener(this.touchEvent,this)<p class="p1">
</p>        btn_close.addClickEventListener
cc.MenuItem
(function (sender, type) {
cc.log("哈哈哈111");
if(type==ccui.Widget.TOUCH_BEGAN) {
cc.log("哈哈哈");
}
},this);
this.addChild(btn_close);
通过ccuix.Button 创建的btn,存在两种触发点击事件的方法
addClickEventListener(只在按钮点击触发一次),addTouchEventListener(按钮点击 抬起 移动 取消状态触发事件)
<pre name="code" class="javascript">touchEvent: function (sender, type) {
switch (type) {
case ccui.Widget.TOUCH_BEGAN:

cc.log("Touch Down");
break;

case ccui.Widget.TOUCH_MOVED:
cc.log("Touch Move");
break;

case ccui.Widget.TOUCH_ENDED:
cc.log("Touch Up");
break;

case ccui.Widget.TOUCH_CANCELED:
cc.log("Touch Cancelled");
break;

default:
break;
}
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: