如果声明改变文字颜色

时间:2012-12-05 10:42:26

标签: actionscript-3

for(var temp:int = 0;temp<recipeNum;temp++)
{
    if ((temp == 1) || (temp == 2) || (temp == 6) || (temp == 9))   
    {
        textRecipe.textColor = 0x0000FF;
    }
    else
    {
        textRecipe.textColor = 0x000000;
    }

    textRecipe.text += "\n" + recipe[temp];
    addChild(textRecipe);                   
}

此代码的问题是屏幕上的所有文字都是黑色的。我希望临时1,2,6,9为蓝色,任何解决方案。

1 个答案:

答案 0 :(得分:3)

如果我没有错,那么您只使用一个名为TextField的{​​{1}}。

请注意,即使您将 textRecipe 次添加到舞台,它也始终是同一个对象。

分配recipeNum属性,它会修改整个文本的颜色,因此分配的最后一个颜色(可能是黑色)将是整个文本的颜色。

使用多个textColor或使用TextField为文本的一部分指定颜色:

TextFormat

如果您需要更多帮助,请与我联系。