親SWFからSWFをアンロードします
-
04-10-2019 - |
質問
だから私はSWFを別のSWFにロードしました。
reforturlは私の外部SWF変数です
function startload(){
var mRequest:URLRequest = new URLRequest(correctURL.toString());
mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
mLoader.load(mRequest);
}
function oncompletehandler(loadevent:event){
var gmc:MovieClip = new MovieClip();
gmc.x = 266;
gmc.y = 67;
addChild(gmc);
gmc.addChild(loadEvent.currentTarget.loader);
}
しかし、私はそれを別のSWFに置き換えたいときに、いまいましいものを降ろすのに苦労しています。
私が試しているコードはこれです
関数closeallstreams(e:event){
e.currentTarget.loader.unloadAndStop();
gmc = null;
gmc.removeChild(e.currentTarget.loader);
trace("unloaded");
}
mloader.contentloaderinfo.addeventlistener(event.unload、closeallstreams);
上で古い音を聞くことができるので、私はただ運がありません。
ロードされたSWFの変数にもアクセスしたくないか、ハハをcheするだけです。
ありがとう
解決
まあ、UnloadandStop()はフラッシュプレイヤー10のみで動作し、その後、Nullをローダーリファレンスに割り当てる必要はありません。この方法はそれ自体です。 ClosealLStreamsメソッドは、この声明の後に呼び出されます
E.CurrentTarget.Loader.UnloadAndStop();またはe.currenttarget.loader.unload();
したがって、UNLoadイベントディスパッチャーの内部でそれを呼び出さない方が、あなたの場合のClosealLStreamsです。
他のヒント
とにかくこれは問題です:
gmc = null;
gmc.removeChild(e.currentTarget.loader);
理由を説明する必要がありますか
所属していません StackOverflow