package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.Loader; import flash.display.Sprite; import flash.events.Event; import flash.net.URLRequest; import flash.system.ApplicationDomain; /** *资源加载器 * @author Administrator * */ public class test2 extends Sprite { private var load:Loader; public function test2() { load=new Loader(); var URl:URLRequest=new URLRequest("res/applicationDomainTest.swf"); load.load(URl); load.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoad); } private var doman:ApplicationDomain; private var _class:Class; private function onLoad(evt:Event):void{ //创建域
doman=load.contentLoaderInfo.applicationDomain as ApplicationDomain;
_class= doman.getDefinition("hy1") as Class; var bd:BitmapData=new _class; var bitmap:Bitmap=new Bitmap(bd); addChild(bitmap); } } }
解析:
ApplicationDomain是存放AS3定义(包括类、方法、接口等)的容器。使用Loader类加载swf时可以通过指定ApplicationDomain参数将swf加载到不同的域(Domain)。
浙公网安备 33010602011771号