Flash CS5 / AS3, после предварительной загрузки конструктор основного класса не может ссылаться на мувиклипы - PullRequest
0 голосов
/ 17 августа 2011

Я изменил образец Adobe Flash CS5 для создания SWF-файла с предварительным загрузчиком.

В моем FLA у меня есть два остановленных кадра:

В первом кадре Я только поместил этот код (и текстовое поле, показывающее процент):

stop();

this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onLoading);
this.loaderInfo.addEventListener(Event.COMPLETE, onComplete);

function onLoading(evt:ProgressEvent):void {
    var loaded:Number = evt.bytesLoaded / evt.bytesTotal; 
    percent_txt.text = (loaded*100).toFixed(0) + "%";
};

function onComplete(event:Event):void { 
    this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, onLoading);
    this.loaderInfo.removeEventListener(Event.COMPLETE, onComplete);
    gotoAndStop(2); 
};

Во втором кадре I:

  • Главный экспортный класс ;
  • У меня есть все необходимые графические ресурсы на сцене;

Когда я тестирую образец Adobe (у него нет основного класса в кадре 2, только большое изображение), все работает нормально, но когда я компилирую модифицированную версию, я получаю странные ошибки.

В конструкторе Main class я ссылаюсь на три фрагмента ролика , например. таким образом: myClip.alpha=0, но, похоже, теперь Flash больше их не видит (они нулевые). Зачем?

Как я могу заставить этот preloader работать?

Заранее спасибо.

1 Ответ

0 голосов
/ 17 августа 2011

Когда вы говорите «Основной класс», вы имеете в виду класс, который вы задали в качестве класса документа? Если я правильно следую за вами, проблема, вероятно, заключается в том, что класс документа всегда создается в первом кадре, поэтому ваши экземпляры на сцене еще не существовали.

Невозможно подождать, пока класс документа будет создан, пока не будут созданы более поздние кадры. Вероятно, вам придется удалить свой класс из назначения класса документа, чтобы создать свой экземпляр во 2-м кадре. В этот момент вы можете передать ссылку на ваши мувиклипы или перейти к конструктору вашего класса.

...