Я пытаюсь добавить несколько разных версий одной и той же кнопки на сцену и иметь возможность получить к ним доступ позже, назначив им идентификатор.Я предположил, что это будет сделано, чтобы у класса был класс для кнопки, в которой определена внутренняя статическая переменная, чтобы идентификатор можно было найти в следующей функции.Похоже, это не работает, поскольку идентификатор постоянно отображается как последнее заданное число, поэтому в данном случае 6.
Я предполагаю, что я делаю это неправильно?Вот мой код, чтобы вы могли лучше понять:
package src {
import flash.display.MovieClip;
import flash.events.*;
import flash.utils.Timer;
import flash.net.*
import flash.display.Loader
public class main extends MovieClip {
public var xmlData:XML = new XML
public var currentName = null
public function main() {
var y = 0
for(x=0; x<=6; x++){
var names:namez = new namez
namez.ID = y
y++
names.y = x*25
names.addEventListener(MouseEvent.CLICK, checkMe)
spinner.addChild(names)
}
}
public function checkMe(e:MouseEvent){
trace("clicked"+namez.ID)
}
}
}
namez.as class:
package src {
import flash.display.MovieClip
public class namez extends MovieClip{
internal static var ID
public function namez() {
}
}
}
Несмотря на то, что выполняется трассировка для кнопок для namez.ID и она правильно показывает 0,1,2,3,4,5,6 при нажатии кнопки отображается только число 6.
Как правильно сделать, чтобы динамически добавленные кнопки были доступны другим функциям?Должен ли я использовать массив здесь?
К вашему сведению, общее количество необходимых кнопок - 241.