PDA

Просмотр полной версии : Хранение SWF в массиве и добавление SWF на сцену


BenderMTB
07.04.2013, 14:11
Загружаю SWF с помощью Loader и складываю загруженные SWF в массив:

// событие Event.COMPLETE
function loader_event_complete(e:Event):void {

var lr_movie_clip:MovieClip;

lr_movie_clip = MovieClip(e.target.content);


gt_arr[gt_arr.length] = [i_object_n, ir_object];

}

Затем пытаюсь добавить данный SWF из массива:

object_cont_swf.addChild(gt_arr[0]);

Но почему то он не добавляется. Подскажите пожалуйста в чём ошибка?
Притом если добавлять в событие Event.COMPLETE то он всё нормально добовляет…

Александр Мостовой
07.04.2013, 14:43
gt_arr[gt_arr.length] = [i_object_n, ir_object];
У вас получился двумерный массив, т.е. в каждой ячейке лежит еще по массиву
и из кода непонятно что это за переменные i_object_n, ir_object, т.е. собственно lr_movie_clip вы в массив не добавляете
Добавлять лучше методом push
gt_arr.push(lr_movie_clip)

BenderMTB
07.04.2013, 14:49
Сорри. Немного описался. Просто сокращал код для простоты.

// событие Event.COMPLETE
function loader_event_complete(e:Event):void {

var lr_movie_clip:MovieClip;

lr_movie_clip = MovieClip(e.target.content);


gt_arr[gt_arr.length] = [i_object_n, lr_movie_clip]; // i_object_n - номер MovieClip, для поиска по массиву

}

object_cont_swf.addChild(gt_arr[0][1]);

object_cont_swf - пустой фрагмент

Александр Мостовой
07.04.2013, 14:57
Уверены, что object_cont_swf на сцене?

BenderMTB
07.04.2013, 14:59
уверен

Александр Мостовой
07.04.2013, 15:08
уверен
Чем докажите? :)

В смысле если так как говорите должно работать. проверьте все таки тот ли это клип о котором думаете вставив после object_cont_swf.addChild(gt_arr[0]);

object_cont_swf.graphics.beginFill(0xff0000);
object_cont_swf.graphics.drawCircle(0, 0, 30);

Добавлено через 4 минуты
Ну и сделайте trace (object_cont_swf.numChildren) или посмотрите в дебагере