我正在尝试在游戏中更改影片剪辑内部的文本字段的颜色。我使用以下方法更改了影片剪辑的颜色:
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
答案 0 :(得分:1)
ColorTransforms应用于MovieClip的所有内容(和子项)。 TextField(或任何其他DisplayObject子)的颜色无关紧要,它都会呈现黑色。您的选择是:
不将黑色colorTransform应用于父级MovieClip,而是应用于要变黑的圆圈。
将TextField移出父MovieClip
这与几何变换相同 - 如果旋转父动画片段,则内部的子项都会相应地旋转。