Instantiate a class from a string in ActionScript 3

后端 未结 2 1789
伪装坚强ぢ
伪装坚强ぢ 2021-01-13 13:40

I\'ve got a string which, in run-time, contains the name of a class that I want to instantiate. How would I do that?

I read suggestions to use flash.utils.getD

相关标签:
2条回答
  • 2021-01-13 14:03

    The easiest method I've come up with is to simply write the classnames out, separated by semicolons, anywhere in your project.

    e.g. I create an Assets.as file with this in it:

    package {   
    
    public class Assets {       
    
        // To avoid errors from the compiler when calling getDefinitionByName
        // just list all of the classes that are not otherwise referenced in code:
        Balloon;
        Cloud;
        FlyingHorse;
        FlyingPig;
        UFO;
        Zeppelin;       
    }
    }
    

    Full code example/tutorial on this is here: http://producerism.com/blog/flashpunk-dame-and-lua-tutorial-part-6/

    0 讨论(0)
  • 2021-01-13 14:03

    The other option is to use the mxmlc -includes compiler argument like this:

    -includes=com.mydomain.package.MyClass
    

    http://blogs.adobe.com/cantrell/archives/2010/09/loading-classes-dynamically-in-actionscript-3.html

    0 讨论(0)
提交回复
热议问题