在mc上进行transform.colortransform之后,无法在mc中更改文本字段的颜色

时间:2012-01-17 18:52:26

标签: flash actionscript-3 textfield movieclip colortransform

我正在尝试在游戏中更改影片剪辑内部的文本字段的颜色。我使用以下方法更改了影片剪辑的颜色:

  

var newColor:ColorTransform = new ColorTransform(); //颜色变化

     

newColor.color = 0x000000;

     

circle.transform.colorTransform = newColor;

这很好用。但是,我已经使用this.addChild()添加了一个文本字段,名为A(public var A:TextField = new TextField(),我将其设置为白色)。 当我尝试使用A.textColor = 0xFFFFFF更改A文本的颜色时,使用transform.colortransform后,圆的颜色仍为黑色,A也变为黑色。无论我多久调用一次改变A的文字颜色,它都会保持黑色。

任何人都知道可能出现什么问题?

谢谢, FF

1 个答案:

答案 0 :(得分:1)

ColorTransforms应用于MovieClip的所有内容(和子项)。 TextField(或任何其他DisplayObject子)的颜色无关紧要,它都会呈现黑色。您的选择是:

  • 不将黑色colorTransform应用于父级MovieClip,而是应用于要变黑的圆圈。

  • 将TextField移出父MovieClip

这与几何变换相同 - 如果旋转父动画片段,则内部的子项都会相应地旋转。