cocos2x 3.3 final 版Label的setTextColor貌似有问题?

Hi, all

今天在使用Label时,想给文本设置alpha透明度,查阅了api手册使用Color4B(255, 0, 0, 255 * .5)方法,但第四个参数的透明度无论怎么设置都不生效?另外我换成Color4F,并把透明度改成.5f也一样不生效。


而我使用LayerColor设置Color4B则完全正常。


基本我这边确认是Label的setTextColor有bug,有遇到同样问题的同学么?

我这边测试了下,是没问题的。你可以把代码扔到TestCPP里面看看:7::7:

@abc88798 问题依旧噢,我在node: Scene下做了2个范例,代码如下:

auto m_label = Label::createWithSystemFont("asdf", "Tahoma", 40);
addChild(m_label);
m_label->setTextColor(Color4B(255, 0, 0, 255 * .2));
m_label->setPosition(Point(300, 250));

auto m_testLayer = LayerColor::create(Color4B(255, 0, 0, 255 * .2));
addChild(m_testLayer);
m_testLayer->setPosition(Point(350, 200));

运行结果如图,可以明显看到Label是没有透明的,而LayerColor是有透明度的:

噢,对了,漏了说,如果使用setOpacity倒是可以吧Label变透明,只是弄不懂为什么我这边Color4B无法直接做到这个效果。

应该是个BUG,之前我是用Label::createWithTTF测的,所以没测出来:12: 。使用这个的话是可以正常使用setTextColor的。
你可以关注下这个https://github.com/cocos2d/cocos2d-x/issues/9955
感谢你的反馈:14: :14: :14:

好的,希望下个版本能修复,我这边也可以通过其他方式绕过这个bug来解决~