cocos creator2.0.1新手坑

  • 如果电脑装了虚拟机什么的,那么creator编辑器右上角扫一扫的ip并不一定是你电脑在局域网的ip。需要手动ipconfig查看电脑的ip,加上端口号,才能在手机上预览。或者在creator编辑器内项目设置里手动设置IP。
  • creator编辑器貌似没有ctrl+Y功能,撤回的步骤居然无法逆还原。
  • 项目要从1.*过渡到2.0的话,会遇到很多坑。
  • 多注意保存,creator编辑器有各种bug,包括但不限于卡死、莫名占内存、界面bug、操作无效等,遇到奇怪问题请先重启编辑器
  • 测试项目请用谷歌或者火狐浏览器,比如发布后web-mobile用360浏览器打不开,火狐可以打开。另外项目测试如果有网络通信的话,也可能会出现一些URL域之类的问题,请多StackOverflow或者论坛搜搜。
  • 一个creator新创建的脚步运行顺序如下:
ctor(){
       console.log("changeColor ctor");
   },

   onLoad:function () {
       console.log("changeColor onLoad");
   },
   start () {
       console.log("changeColor start");
   },
   update:function (dt) {
       console.log("changeColor update");
   }
   ```

changeColor ctor
changeColor onLoad
changeColor start
changeColor update
···
changeColor update

也就是先调用构造ctor,再调用onload,再调用start,最后节点脚本生成启用完毕,开始update。

 - getComponent()可以获得节点里的控件,如果一个节点下有多个该类型控件,那么只返回第一个。
 - 获取Canvas下某个控件的方式如下(比如获取button下的label,并设置label文字):

//fCanvas下一个叫sendMsg的button,button里有个叫Label的label。
方法一:通过getChildByName()
var btn = this.node.getChildByName(“sendMsg”).getComponent(cc.Button);
var lab = btn.node.getChildByName(“Label”).getComponent(cc.Label);
lab.string = “成功获取label”";

方法二:通过cc.find()
var lab = cc.find(“Canvas/sendMsg/Label”).getComponent(cc.Label);
lab.string = “成功获取label”;

**坐标转换相关**:

一个简单的暂停场景和恢复场景功能:
`var self = this;
        self.btnCtrl.node.on("click",function(){
            if (!self.bPause){
                self.switchStageScene.getComponent("switchStage").show()
                self.node.runAction(cc.sequence(cc.delayTime(0.5),cc.callFunc(function(){
                    cc.director.pause()
                })))
            }else{
                cc.director.resume()
            }
            self.bPause = !self.bPause


        },self)`

猜你喜欢

转载自blog.csdn.net/qq_21031727/article/details/82060733