这两个层十分简单,都仅仅包含一个色块。不同的是,前者创建的是一个实色色块,而后者创建的是一个渐变色块。图3-7 展示了 Cocos2d-x 测试样例中 CCLayerColor 与 CCLayerGradient 的效果
CCLayerColor拥有以下初始化方法:如果采用指定了宽与高的初始化方法,则创建一个指定大小的色块;如果采用不指定 大小的初始化方法,则创建一个屏幕大小的色块。CCLayerColor 的创建方法和初始化方法如下所示:
static CCLayerColor * create(const ccColor4B& color);
static CCLayerColor * create(const ccColor4B& color, GLfloat width, GLfloat height); bool initWithColor(const ccColor4B& color);
bool initWithColor(const ccColor4B& color, GLfloat width, GLfloat height);
CCLayerGradient与CCLayerColor类似,但是它在初始化时需要指定两种颜色以及渐变的方向。在初始化方法中,start 参数为起始颜色,end 参数为结束颜色,而 v 是方向向量。CCLayerGradient 的创建方法和初始化方法如下所示:
static CCLayerGradient* create(const ccColor4B& start, const ccColor4B& end);
-
static CCLayerGradient* create(const ccColor4B& start, const ccColor4B& end,
-
? const CCPoint& v);
-
? bool initWithColor(const ccColor4B& start, const ccColor4B& end);
-
? bool initWithColor(const ccColor4B& start, const ccColor4B& end, const CCPoint& v);
在色块创建后,也可以通过下面列举的方法来修改色块大小:
ccmenu稍后会介绍