Cocos Creator 系统学习笔记(二)--场景树

场景树:

cc.Node属性:

cc.Component:

代码组件:

cc.Node场景树相关方法:

示例代码如下:

 cc.Class({
    extends: cc.Component,
    properties: {     },
 //组件实例在加载的时候运行
    onLoad:function(){
         console.log(this);//this 当前实例
        console.log("this onload");
        //代码内找到节点?   //组件实例所挂载的节点
        console.log("this node:"+this.node);
        console.log("this node name:"+this.node.name);
        console.log("this node active:"+this.node.active);
        console.log("this node position:"+this.node.x,this.node.y,this.node.position);//this.node.position: object(480.0,320.0)        
        console.log("this node group:"+this.node.group,this.node.groupIndex);//default  0
        if(this.node.parent){
            console.log(this.node.parent.name+"in if");//canvas的父节点是cc_scene
        }else{            
        console.log("in else");
        }
        //子节点
        var children=this.node.children;
        console.log(children.length);
        for(var i=0;i<children.length;i++){
            console.log(children[i].name);
            //子节点不包括自身
        }
        //添加
        var newNode=new cc.Node();
        this.node.addChild(newNode);
        for(var i=0;i<children.length;i++){
            console.log(children[i].name);
            //子节点不包括自身           
        }
        console.log("2========================");
        //delete
        newNode.removeFromParent();
        for(var i=0;i<children.length;i++){
            console.log(children[i].name);            
        }
         console.log("3========================");/*
         //删除所有节点
         this.node.removeAllChildren(); */

         //局部查找 全局查找
         var a=this.node.getChildByName("sprite");
         console.log(a.name+"===============");//可以存在多个节点名字相同,但返回的是第一个
         //全局查找 时间消耗  
         var item=cc.find("Canvas/sprite");
         console.log(item.name+"============");

         //设置位置 获取位置
         var pos=item.getPosition();
         var newpos=cc.p(100,100);
         //item.setPosition(newpos);        

         //set z 设置节点的渲染顺序,默认是0。如设置为100(例子),则会显示在屏幕最前
         item.setLocalZOrder(100);
         //set active
         item.active=false;
    }, 
});

猜你喜欢

转载自www.cnblogs.com/allyh/p/9961150.html