以下是我使用的时候遇到的陷阱:
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));
查阅了官方文档:
UILayout 显示颜色的模式有三种
| LayoutBackGroundColorType | 说明 |
|---------------------------|-------------------|
| LAYOUT_COLOR_NONE | 透明,没有颜色显示 |
| LAYOUT_COLOR_SOLID | 实体,可以设置颜色 |
| LAYOUT_COLOR_GRADIENT | 渐变颜色 |
但是仍然不起作用,最后发现是这一句的问题:
layout->setContentSize(Size(210,200));
改换成和例子里面一样就ok了
layout->setSize(Size(280,150));
layout->setSize(Size(280,150));
设置透明度开始用的是setOpacity(),发现又不起作用,要用UILayout 自己的成员setBackGroundColorOpacity()才行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。