您仍然可以在actionscript 2中尝试强类型变量。
此外,您可以将新文本字段存储在变量中,以避免使用
eval()
.
另一个问题是您使用常量(1)作为
createTextField()
作用这意味着您最终将只创建一个文本字段:最后一个,这就是您看到3的原因。
因为在同一个电影剪辑中,所有3个文本字段都位于同一深度,所以最近添加的文本字段将替换前一个:
for (var i:Number = 1; i < 4; i++){
var textField:TextField = display.createTextField("x_"+i, i, (10*i)+5, 0, 10, 20);
textField.text = i.toString();
}
注意
i
作为第二个参数传递,而不是
1
.
此外,如果有帮助,您可以将这些数据存储在数组中以供以后使用:
var textFields:Array = [];
for (var i:Number = 1; i < 4; i++){
textFields[i] = display.createTextField("x_"+i, i, (10*i)+5, 0, 10, 20);
textFields[i].text = i;
}
(根据
documentation
,默认textColor为0x000000)