AS3 从外部SWF中获取资源的方法(ApplicationDomain的使用)

时间:2023-03-09 05:51:56
AS3 从外部SWF中获取资源的方法(ApplicationDomain的使用)
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)。