Цитата:
Сообщение от -De-
По-моему в вашем тексте можно заменить "динамические свойства" на getChildByName %) Но его хоть явно видно, когда используют.
|
Я рассуждал на тему динамических свойств не относительно этого примера, а в целом.
Но если уж быть дотошным, то правильнее было-бы написать нечто вроде этого:

Код AS3:
package {
class MyClass extends Sprite {
private var _myArray:Array;
public function MyClass() {
_myArray = ["Link 1", "Link 2", "Link 3", "Link 4", "Link 5", "Link 6"];
for(var i:int = 0; i < myArray.length; i++) {
var btn:MyBtn = new MyBtn(_myArray[i] as String);
btn.y = 30*i;
btn.addEventListener(MouseEvent.CLICK, buttonClickHandler);
addChild(btn);
}
}
private function buttonClickHandler(event:MouseEvent):void {
var btn:MyBtn = event.currentTarget as MyBtn;
trace('clicked text:', btn.link);
}
}
class MyBtn extends Sprite {
private var _link:String;
public function MyBtn(link:String) {
_link = link;
var tf:TextField = new TextField();
tf.autoSize = TextFieldAutoSize.LEFT;
tf.border = true;
tf.text = link;
addChild(tf);
}
public funciton get link():String {
return _link;
}
}
}