当我得到这个类的名字时,我正在创建类的实例。 我认为更好地解释我的问题将是这段代码:
package
{
import flash.utils.getDefinitionByName;
public class SomeClass extends ParentClass
{
[Embed(source='../assets/gfx/levelImg/level0.png')]
public static const Level0Img:Class;
public function someFunction():void
{
var imgString:String = "Level0Img";
var imgClass:Class = getDefinitionByName(imgString) as Class;
}
}
我调用someFunction,我得到错误:[Fault]异常,information = ReferenceError:错误#1065:未定义变量Level0Img。
这有什么问题? }
答案 0 :(得分:2)
您正在声明一个嵌套的类。您提供的名称无法找到该定义。
试试这个:
(...)
public class SomeClass extends ParentClass
{
[Embed(source='../assets/gfx/levelImg/level0.png')]
public static const Level0Img:Class;
public function someFunction():void
{
var imgString:String = "SomeClass_Level0Img";
var imgClass:Class = getDefinitionByName(imgString) as Class;
}
(...)
答案 1 :(得分:0)
为什么不写var imgClass:Class = Level0Img;
?这比猜名更好......