![]() |
|
||||||||||
|
|||||
|
Сначала я инициализирую класс опций, который инициализирует все свои поля по ADDED_TO_STAGE
_options = Options.getInstance(); addChild(_options); //required for initializing sliders removeChild(_options); чуть ниже возвращает null. Выходит, это происходит с задержкой? Как же тогда поймать момент, когда init проинициализирован? Далее в конце init отсылаю событие Пытаюсь проверить, работает ли таким способом, и, угадайте что? _options = Options.getInstance(); addChild(_options); //required for initializing sliders removeChild(_options); _options.addEventListener(Event.ACTIVATE, function(e:Event):void{ trace(_options.stones); }); Что я делаю не так? update: Убрал removeChild в обработчик события, и заработало... Тоесть, событие ADDED_TO_STAGE, оказывается, вызывается не addChild напрямую, и происходит где-то через кадр?(Потому, что ENTER_FRAME успевает сработать разок) Как это вообще по нормальному то делается? У меня есть класс Options, дисплейный, по иниту инициализирует свои поля, но в конструкторе инициализировать нельзя потому, что он унаследован от Window, который рисует задний фон в своём ините, и выходит, что тогда элементы будут под задним фоном. Если переместить рисование фона в конструктор, то получается, что изменить параметры windowWidth и windowHeight невозможно, пробовл без super.windowWidth, не работает, с super пишет, что до вызова конструктора суперкласса this, super и всё такое запрещено. А фон нужно рисовать по размерам окна(логично). Оверрайда переменных не существует, что делать? Нужно проинициализировать Options и сразу же пользоваться его полями.
__________________
There is no thing in this world that is not simple. Последний раз редактировалось ZackMercury; 23.08.2017 в 23:29. |
![]() |
Часовой пояс GMT +4, время: 08:15. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|