(as3, flash) скрыть дизайн после предварительной загрузки и показать его после того, как методы (из .as) будут готовы?

#flash #actionscript-3 #resize #preloader

#flash #actionscript-3 #изменение размера #предварительный загрузчик

Вопрос:

в конце предварительной загрузки и примерно на 1/2 секунды на экране появляется дизайн из «fla», но с элементами в том виде, в каком они есть в fla, а затем они занимают правильное положение, как указано в файле .as : поскольку элементы должны знать размер файла..

Например: в fla я нарисовал квадрат размером 10×10 синим цветом, который становится флагом 10x stage.stageWidth после того, как мы узнаем размер окна пользователя.

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

Спасибо

Ответ №1:

Похоже, что изображение из вашего FLA (то, что вы размещаете на своей сцене с помощью графического интерфейса) загружается до выполнения кода, который изменяет его размер / перемещает.

Где находится ваш Actionscript? Находится ли он на более позднем кадре на временной шкале после появления рисунка? Убедитесь, что любой код, связанный с изменением размера рисунка до ширины сцены, будет выполняться до появления рисунка, с точки зрения воспроизведения, проходящего по временной шкале вашего SWF.

Вы можете скрыть изображение на сцене с помощью Actionscript, присвоив ему имя экземпляра (например, «myMovieClip») и вызвав:

myMovieClip.alpha = 0;

затем запустите код изменения размера, за которым следует

myMovieClip.alpha = 1;

Надеюсь, это поможет.

Обратите внимание, что вы также можете просто установить для вашего MovieClip значение alpha = 0 в графическом интерфейсе, если проблема заключается в том, что код отделен от FLA. Затем просто измените его на alpha = 1 в любом методе, в котором вы хотите, чтобы он выполнялся.

Комментарии:

1. спасибо, да, это сработало, когда я поместил весь дизайн в видеоролик и «добавил» видеоролик после вызова метода изменения размера. Спасибо