埋め込まれた SWF にパラメーターを渡す方法を理解しようとするのではなく、先に進んで、20 個の SWF をすべて異なる値でコンパイルしました。これらの SWF は現在、私の Flash Builder アプリケーション内にあります。
SWF ごとに (includeIn を使用して) 状態があるため、ユーザーがボタンをクリックして状態を切り替えると、適切な SWF が表示されます。
問題は、ユーザーが SWF を表示するときに、SWF がバックグラウンドでロードされ実行されたままになることです。ユーザーが状態を離れたときに表示された SWF をアンロードし、再び必要になったときにロードしたいと考えています。これが不可能な場合は、状態に入ったときに SWF をリロードするだけで解決し、残りの 19 をバックグラウンドで実行したままにします。
私は次のものを持っています:
<fx:Script><![CDATA[
private var flashMovie1:MovieClip;
private var flashMovie2:MovieClip;
private function initFirst():void{
flashMovie1 = dmp_first.content as MovieClip;
}
private function initSecond():void{
flashMovie2 = dmp_second.content as MovieClip;
}
protected function btnFirst_clickHandler():void
{
flashMovie2.Stop();
currentState='First';
flashMovie1.Play();
}
protected function btnSecond_clickHandler():void
{
flashMovie1.Stop();
currentState='Second';
flashMovie2.Play();
}
]]></fx:Script>
<mx:SWFLoader id="dmp_first" includeIn="First" source="assets/images/dmp_first.swf" complete="initFirst()"/>
<mx:SWFLoader id="dmp_second" includeIn="Second" source="assets/images/dmp_second.swf" complete="initSecond()"/>
上記のコードが Stop and Play でまったく機能しないことに加えて、SWF を強制的にリロードする方法がまだわかりません。どんな助けでも大歓迎です!