cocos2d-x 3.1.1 学习笔记[8]Layer 请叫我层

来源:互联网 发布:mac怎么还原网络设置 编辑:程序博客网 时间:2024/04/29 01:38







    //获取屏幕大小    auto s = Director::getInstance()->getWinSize();            //创建一个有颜色的layer,如果添加的子结点超出了颜色的范围,这个子结点依然是可以看见的,所以可以理解为这个layer是有无限大的,然后部分被涂色了。    //Color4B(0-255,0-255,0-255,0-255);    auto layerColor = LayerColor::create(Color4B(125, 200, 200, 255), 300, 300);    layerColor->setAnchorPoint(Vec2(0.5, 0.5));    layerColor->setPosition(Vec2(s.width / 2, s.height / 2));    addChild(layerColor);    //创建一个普通的layer,这个layer无限大,但是不能给这个layer设置颜色    auto layerNormal = Layer::create();    layerNormal->setAnchorPoint(Vec2(0, 0));    layerNormal->setPosition(Vec2(50, 50));    layerNormal->setContentSize(Size(50,50));    layerNormal->setColor(Color3B(200, 200, 200));//    layerNormal->addChild(Sprite::create("card_bg_big_2.jpg"));    layerColor->addChild(layerNormal, -1);//    layerColor->addChild(Sprite::create("card_bg_big_2.jpg"));        //创建一个背景颜色渐变的layer    auto layerGradient = LayerGradient::create(Color4B(200, 200, 200, 200), Color4B(100, 100, 100, 100), Vec2(0.9, 0.8));    addChild(layerGradient);


注:因为Layer比较特殊,它默认忽略锚点,所以要调用ignoreAnchorPointForPosition()接口来改变锚点,关于ignoreAnchorPointForPosition()接口的使用说明,我们将在后面详细讲解。


auto green = LayerColor::create(Color4B(100, 255, 100, 128), visibleSize.width/4, visibleSize.height/4);green->ignoreAnchorPointForPosition(false);green->setAnchorPoint(Point(1, 1));red->addChild(green);




0 0
原创粉丝点击