cocostudio uiLayout控件设置颜色和透明度的方法

前端之家收集整理的这篇文章主要介绍了cocostudio uiLayout控件设置颜色和透明度的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

以下是我使用的时候遇到的陷阱:

Layout* layout = Layout::create();
layout->setBackGroundColor(Color3B::RED);
layout->setContentSize(Size(210,200));
_dianJi->addChild(layout);

代码编译通过,但是就是设置的颜色没起作用。

于是查阅cocos2d-x自带的例子:

// Create the layout with color render
Layout* layout = Layout::create();
layout->setBackGroundColorType(LAYOUT_COLOR_SOLID);
layout->setBackGroundColor(Color3B::RED);

layout->setSize(Size(280,150));


于是我添加了:layout->setBackGroundColorType(LAYOUT_COLOR_SOLID);

查阅了官方文档:

UILayout 显示颜色的模式有三种
| LayoutBackGroundColorType | 说明 |
|---------------------------|-------------------|
| LAYOUT_COLOR_NONE | 透明,没有颜色显示 |
| LAYOUT_COLOR_SOLID | 实体,可以设置颜色 |
| LAYOUT_COLOR_GRADIENT | 渐变颜色 |

但是仍然不起作用,最后发现是这一句的问题:layout->setContentSize(Size(210,200));
改换成和例子里面一样就ok了
layout->setSize(Size(280,150));

设置透明度开始用的是setOpacity(),发现又不起作用,要用UILayout 自己的成员setBackGroundColorOpacity()才行。

猜你在找的Cocos2d-x相关文章