我在AIR中有一个应用程序,它正在加载swf文件并对它们进行预览。当那些swfs加载其他内容(例如jpg)然后我有一个错误,该url未找到 - 我确信这是关于jpg文件。仅当我使用loadBytes()通过filereference加载swf时才会出现此问题。当我使用load()通过Loader加载swf时 - 问题不存在。我该如何解决这个问题?对不起我的英语不好。我附加了加载swfs的代码片段。
private static function loadFile(loadType:String, swfNum:Number = 0):void {
lc = new LoaderContext();
lc.allowCodeImport = true;
lc.allowLoadBytesCodeExecution = true;
currentSwfNum = swfNum;
var fRef:FileReference = DataBase.swfsList[currentSwfNum];
fRef.addEventListener(Event.COMPLETE, onFileReferenceLoad);
fRef.load();
}
private static function onFileReferenceLoad(e:Event):void {
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, ifComplete);
loader.loadBytes(e.target.data, lc);
}
private static function ifComplete(e:Event):void {
var mc:MovieClip = LoaderInfo(e.target).content as MovieClip;
mc.addEventListener("SHOOT", SwfSingleCapture.captureSingleShoot);
}
DataBase.swfList - 它是FileReference对象的数组,由FileReferenceList和browse()选择。