Интересно, flash.utils.getDefinitionByName (name: String): класс работает с пользовательскими классами?Есть ли проблема, если у класса есть конструктор, который принимает аргументы?Я говорю это, потому что у меня есть класс в пакете вида packageA.packageB, и когда я ввожу имя класса в вышеуказанную функцию, так как packageA.packageB.ClassName не работает.Также я попытался (с тем же результатом) вывод из getQualifiedClass, который дает packageA.packageB :: ClassName.Любые идеи ??
Вот часть кода, которая принадлежит файлу, который импортируется как import factory.scratchers. *;все элементы, которые имеют имена AlphaScratcher, DissolveScratcheer, ExplodeScratcher и т. д.Соответствует ли вышеуказанный импорт требованию?
import factory.scratchers.*;
...
for ( var iArea:uint = 0; iArea < _totalScratchAreas; iArea++ ) {
var sourceArray:Array = new Array();
var currentNameArray:Array = _globalAssetNameArray[iArea];
var theScratcher:Scratcher;
for ( var index:uint = 0; index < _globalMsgArray[iArea].length; index++ ) {
// here i would like to have something like:>
var ScratchClass:Class = getDefinitionByName( "factory.scratchers::ExplodeScratcher") as Class;
theScratcher = new ScratchClass( _assetGenerator, _mainSprite );
// instead of: - but it does not work not sprite shown on screen
theScratcher = new ExplodeScratcher( _assetGenerator, _mainSprite );
theScratcher.setBack( currentNameArray[index] );
sourceArray.push( theScratcher );
if ( _globalArray[iArea][4] == OPENEDAREA ) {
theScratcher.auto();
}
}