我有动态文本框,它包含在动画片段按钮中。我将文本设置为:buttonA.label_txt.text
。但是当按下按钮时,按钮的颜色会根据我设置的内容而改变,但缺少文本。
我已经检查了文本框的属性,并且已经确保颜色是黑色的,因为它应该是。但它仍然缺失。
以下是代码:
var _list:Array = ["XXXquestionsXXX"];
var _marks:Array = [];
var i:int;
var myscore = 0;
question_txt.text = _list[0];
buttonA.label_txt.text = "A. Chicken";
buttonA.addEventListener(MouseEvent.CLICK, q1);
function q1(event:MouseEvent):void
{
if(event.currentTarget == buttonA)
{
_marks.push(" A. chicken /" + "Correct");
var SelColor1:Number = 0XFFFF0;
var myColorTransform1 = new ColorTransform();
myColorTransform1.color = SelColor1;
buttonA.transform.colorTransform = myColorTransform1;
}
}
答案 0 :(得分:1)
当您使用DisplayObjectContainer
更改影片剪辑(或任何ColorTransform
)的颜色时,它会影响对象的所有内容,因此在您的情况下文本变为与背景相同的颜色,您无法看到它。要仅为按钮的背景着色,您需要将transform
应用于按钮中的背景对象,例如:
myButton.background_mc.transform.colorTransform = myColorTransform;
或者可能:
myButton.getChildAt(0).transform.colorTransform = myColorTransform;