码迷,mamicode.com
首页 > 其他好文 > 详细

cocos2dx-CCLayerColor、CCLayerGradient

时间:2014-06-11 22:02:56      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   code   java   http   

1.CCLayerColor

   当我们想创建一个单色得Layer层得时候,我们不需要用一张单色得背景图,因为引擎中有这这样一个CCLayerColor这样得一个类,它可以帮我们完成这样得效果。接下来来看一个例子:


1 CCLayerColor * layercolor = CCLayerColor::create(ccc4(24070100255), size.width, size.height);
2 layercolor->setCascadeColorEnabled(false);
3 
4 layercolor->setPosition(ccp(00));
5 this->addChild(layercolor, 0);

 

    注意这里我没有设置AnchorPoint,因为不管你怎么设置,CCLayer都忽略了它得AnchorPoint,它的值始终都是ccp(0.5f, 0.5f).

    运行后你就可以看到一张纯色背景得Layer.

 

 2.CCLayerGradient

      接下来用CCLayerGradient来创建带有两种颜色的layer,例子代码如下:

bubuko.com,布布扣
1 CCLayerGradient * layergradient = CCLayerGradient::create(ccc4(000255),
2                                                               ccc4(255255255255),
3                                                               CCPoint(size.width * 0.5f0));
4 layergradient->setPosition(CCPointZero);
5 layergradient->changeWidthAndHeight(size.width, size.height);
6 this->addChild(layergradient, -1);
bubuko.com,布布扣


    需要注意的是,它与CCLayerColor一样,也是忽略掉了它的锚点,始终都是0,也就是始终锚点在左下角。

 

   我们也可以同时通过行为动作,来达到项目中所需要的效果,例子代码如下:

bubuko.com,布布扣
1 CCActionInterval *fadein = CCFadeIn::create(5);
2 CCActionInterval *fadeOut = fadein->reverse();
3 CCAction *action = CCRepeatForever

          ::create(dynamic_cast<CCActionInterval *>(CCSequence::create(fadein, fadeOut, NULL)));
4  layergradient->runAction(action);

bubuko.com,布布扣

 

只有看到效果才能感受到它得作用,建议自己动手做一下实验,试着改变颜色和动作来达到不同得效果。

 

cocos2dx-CCLayerColor、CCLayerGradient,布布扣,bubuko.com

cocos2dx-CCLayerColor、CCLayerGradient

标签:style   class   blog   code   java   http   

原文地址:http://www.cnblogs.com/tiancong/p/3772345.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!