Cocos2d-JS 2017.1.18-代码阅读笔记

在一个Layer添加到层上的时候做了如下操作:

new方法创建层,执行层的构造函数:

1.首先是通过new方法创建,最先走的构造函数,ctor 函数,然后将层addChild到层上,在addChild()方法的时候进行了2,3的操作。

addChild()的时候,他们的父亲CCNode,进行了如下操作,执行对应的层上的函数功能:

2.然后是根据层的_running 的状态,则执行 child.onEnter() 操作。

3.如果有过渡动画的话,则进行 if (this._isTransitionFinished) child.onEnterTransitionDidFinish();


所以在层上进行播放音乐的时候,可以在构造方法预先播放音乐,这样就可以达到,界面还没显示出来,但是音乐已经有了,效果体验更佳!!


层的添加和删除,根据树状结构,都是通过消息机制通过controllerLayer.js 去控制的,保证代码的耦合性能。

面向对象,子类可以继承使用基类的方法。

this.removeAllChild();

ListView:   ScrollerView;

this.list_battle = getWidget(this.skin,"list_battle");
this.list_battle.addEventListener(this.selectedItemEvent,this);
this.list_battle.setTouchEnabled(true);
for(var i = 0, len = this._fightShowData.length ; i< len ; i++)
{
    var battleItem = new BattleLayerItem(this._fightShowData[i]);
    this.list_battle.pushBackCustomItem(battleItem);
}
selectedItemEvent: function (sender, type) {

    switch (type) {
        case ccui.ListView.EVENT_SELECTED_ITEM:
            var listViewEx = sender;
            var index = listViewEx.getCurSelectedIndex();
	    var item = listViewEx.getItem(listViewEx.getCurSelectedIndex());
	    this.onClickListView(item);
switch(index){
		case 1:                    
		sendCustomEvent(GameUIEvent.JUST_ADD_LAYER,createAddLayerParam(ArenaLayer._CName,listViewEx.getItem(index)));                    
		break; 
	    }            
		break;        
	default:            
		break;    }}
 

BattleLayerItem.js 是继承的 ccui.Layout。、


背包界面:写了四个ccs文件,四个UI文件

继承的cc.Layout

bagTabberUI.js : 处理背包选中的按钮状态,并且设置tag : 物品,英雄,装备。点击不同按钮,通过发送消息重新获取对应的数据管理。

bagDetialsUI.js : 一个物品的详细信息!

bagTopUI.js : 人物头像,金币刷新显示,钻石刷新显示!

bagListUI.js : 中间物品的显示。


webStorm 回退快捷键 ctrl + Alt + <- ;

js文件回退快捷键是 ctrl + 鼠标左键


cocos studio 导出来的文件,控件的touchEnabled() 默认是false,这点需要注意,如果想使用touchEnabled 为true,则需要对该

控件设置setTouchEnabled(true);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值