更改CCLabel文件的updateColor()函数中的顶点颜色即可,代码如下:
void Label::updateColor()
{
if (_batchNodes.empty())
{
return;
}
Color4B color4( _displayedColor.r, _displayedColor.g, _displayedColor.b, _displayedOpacity );
// special opacity for premultiplied textures
if (_isOpacityModifyRGB)
{
color4.r *= _displayedOpacity/255.0f;
color4.g *= _displayedOpacity/255.0f;
color4.b *= _displayedOpacity/255.0f;
}
Color4B endColor=Color4B::RED;
// special opacity for premultiplied textures
if (_isOpacityModifyRGB)
{
endColor.r *= _displayedOpacity / 255.0f;
endColor.g *= _displayedOpacity / 255.0f;
endColor.b *= _displayedOpacity / 255.0f;
}
cocos2d::TextureAtlas* textureAtlas;
V3F_C4B_T2F_Quad *quads;
for (auto&& batchNode:_batchNodes)
{
textureAtlas = batchNode->getTextureAtlas();
quads = textureAtlas->getQuads();

本文介绍了一种在Cocos2d-x中更新CCLabel颜色的方法,通过修改updateColor()函数内的顶点颜色实现文字颜色的变化。适用于需要动态改变UI文本颜色的游戏开发场景。

1620

被折叠的 条评论
为什么被折叠?



