![](/img/trans.png)
[英]How to reset/reload a flex application with out refreshing the html page or reloading the SWF file?
[英]Flex 4 -Reloading an SWF within the application
我沒有處理試圖找出將參數傳遞給嵌入式SWF的問題,而是繼續進行了工作,使20個SWF都使用不同的值進行了編譯。 這些SWF現在位於我的Flash Builder應用程序中。
每個SWF都有一個狀態(使用includeIn),因此當用戶單擊按鈕切換狀態時,將顯示適當的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()"/>
加上上面的代碼在“停止播放”中完全不起作用,我仍然不知道如何強制SWF重新加載。 任何幫助將不勝感激!
每次使用conatiner一次只能擁有一個瑞士法郎。 另外,您不必使用狀態:)來表示:
<?xml version="1.0" encoding="utf-8"?>
<s:Application
xmlns:fx = "http://ns.adobe.com/mxml/2009"
xmlns:s = "library://ns.adobe.com/flex/spark"
xmlns:mx = "library://ns.adobe.com/flex/mx"
minWidth = "955"
minHeight = "600">
<s:layout>
<s:VerticalLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import mx.controls.SWFLoader;
private function onAppCreationComplete():void
{
showSWF(0);
}
private function onSwfComboChange():void
{
showSWF(cbxSwfData.selectedIndex);
}
private function showSWF(index:int):void
{
grpContainer.removeAllElements();
var swfLoader:SWFLoader = new SWFLoader();
grpContainer.addElement(swfLoader);
swfLoader.load("assets/swfs_files/swf"+index+".swf");
}
]]>
</fx:Script>
<s:ComboBox
id = "cbxSwfData"
dataProvider = "{['swf1','swf2','swf3']}"
change = "onSwfComboChange()"/>
<s:Group
id = "grpContainer"
width = "50%"
height = "50%"/>
</s:Application>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.