一个主项目调用被加载的小游戏SWF项目的方法

一个主项目调用被加载的小游戏SWF项目的方法,并传参数给小游戏项目,注意:被调用的方法是接口,写成public就好

主项目代码:

private var loader:Loader;

public function SwfMethodTest1()
{
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete);
loader.load(new URLRequest("SuperMemory.swf"));
}

protected function onLoadComplete(event:Event):void
{
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoadComplete);

var swfInfo:LoaderInfo = LoaderInfo(event.target);
var swfClass:Class = swfInfo.applicationDomain.getDefinition("SuperMemory") as Class;
var swfObj:Object = new swfClass();
swfObj.getId([1,2,3,4,5,6,7,8],true);
addChild(DisplayObject(swfObj));
}

小游戏目的主类接口代码:

public class SuperMemory extends Sprite
{
//外部传递进来的所有图片id,此数组作为基础数据,不会被改动
private var idArray:Array= new Array();
private var isPhoto:Boolean = false;

//将要显示在游戏视图上的图片的vo列表
private var playPicVOList:Array;
private var gameView:GameView;

public function SuperMemory()
{
// start([1,2,3,4,5,6,7,8],true);
}

public function start(arr:Array,boo:Boolean):void
{
idArray = arr;
isPhoto = boo;

}

外部调用start方法即可

posted on 2013-05-29 10:04  橙小风  阅读(275)  评论(0编辑  收藏  举报