Ссылка на статические переменные из скриптов фреймов в AS3

Есть несколько внешних классов, скажем, MyClass.as

MyClass.as имеет статическую переменную с именем foo

Итак, обычно в других файлах AS я могу вызвать это с помощью

MyClass.foo = бар;

Однако в сценариях временной шкалы это кажется другим.

Каждый раз, когда я пытаюсь это сделать, я получаю ссылку с ошибкой статического типа.

1119: Доступ к возможно неопределенному свойству foo через ссылку статического типа flash.display:DisplayObjectContainer.

Я пытался импортировать MyClass и т. д.... ничего не срабатывает.

Какие-нибудь советы?


person M. Ryan    schedule 27.10.2009    source источник
comment
Меня устраивает. Как вы объявили свою статическую переменную?   -  person David    schedule 27.10.2009
comment
Похоже, что AS3 возражает против назначения экземпляра этапа непосредственно статической переменной. Когда я создал нестатическую переменную для представления экземпляра сцены, а затем назначил эту переменную статической в ​​конструкторе, ошибка исчезла. Я работаю с отключенными экземплярами этапа Auto-Declare, поэтому нужно соблюдать несколько необычных правил. Я думаю, что это может быть закрыто.   -  person M. Ryan    schedule 27.10.2009


Ответы (1)


Эта проблема возникает, когда у вас отключен параметр компиляции «Автоматически объявлять экземпляры сцены», что я обычно и делаю. Вы не можете напрямую присвоить экземпляр stage статической переменной. Вместо этого вы должны создать переменную экземпляра, а затем присвоить ее статической переменной в конструкторе.

Я не могу придумать более сложное/чистое решение, чем это.

Есть проекты, в которых автоматическое объявление недоступно.

person M. Ryan    schedule 27.10.2009