2013-02-05 12 views
0

我試圖讓我的SWF加載程序與數組一起工作,因此我可以通過一個代碼使用按鈕調用我的SWF文件。 這是我收到問題:與數組調用SWF,而不是在閃存中使用我的字符串

場景1,層「動作」,幀2,68號線1067:類型數組的值的隱式強制到一個不相關的類型字符串。

我對數組,字符串或編碼tbh不太好,我不太清楚問題是什麼,我理解它,我的數組和字符串基本上不起作用,但我不不知道如何修復它,如果它可以修復/使用我正在使用的代碼。

只是一些幫助和被指出了正確的方向將是一種享受

var swfList:Array = ["imagegallery.swf", "videoplayer.swf"]; 
var SWFLoader = new Loader; 
var SWFRequest = new URLRequest (swfList) ; 
SWFLoader.load (SWFRequest) ; 


function loadSWF(file:String, container:MovieClip=null):void 
{ 
if(container == null) container = MovieClip(root); 


if(SWFLoader != null) 
{ 
    if(SWFLoader.parent) SWFLoader.parent.removeChild(SWFLoader); 
} 

addChild (SWFLoader); 
} 

vidPlayer_btn.addEventListener (MouseEvent.CLICK, goVidPlayer); 

function goVidPlayer (e:MouseEvent):void 
{ 
loadSWF("videoplayer.swf"); 
} 
imageGallery_btn.addEventListener(MouseEvent.CLICK, goImageGallery); 
function goImageGallery(e:MouseEvent):void 
{ 
loadSWF("imagegallery.swf"); 
} 
+0

如果你只是要單獨訪問字符串,有一個數組有什麼意義? – David

+0

那裏可能沒有,我只是在嘗試一些不同的東西,如果使用代碼的方式沒有字符串,這將是有益的。這是更多的嘗試和兩個按鈕而不是兩個單獨的代碼一個代碼。 – Jack5848

回答

3

在磁盤陣列中訪問項目使用此格式:

var SWFRequest = new URLRequest(swfList[i]); 

其中i是在數組中的位置(從零開始)。 例如:

var SWFRequest = new URLRequest(swfList[0]); 

給出相同的結果爲:

var SWFRequest = new URLRequest("imagegallery.swf"); 
0

廢除了陣列,但仍然「有兩個按鈕,而不是兩個單獨的代碼中的一個代碼」。

// Looks unnecessary 
// var swfList:Array = ["imagegallery.swf", "videoplayer.swf"]; 

// Transfer inside loadSWF() 
// var SWFRequest = new URLRequest (swfList); // needs a url String parameter 
// SWFLoader.load (SWFRequest); 

var SWFLoader = new Loader(); // Don't forget the parenthesis 

vidPlayer_btn.addEventListener (MouseEvent.CLICK, goVidPlayer); 
imageGallery_btn.addEventListener(MouseEvent.CLICK, goImageGallery); 

function goVidPlayer (e:MouseEvent):void 
{ 
    loadSWF("videoplayer.swf"); 
} 

function goImageGallery(e:MouseEvent):void 
{ 
    loadSWF("imagegallery.swf"); 
} 

function loadSWF(file:String, container:MovieClip=null):void 
{ 
    // What for? 
    // if(container == null) container = MovieClip(root); 

    if(SWFLoader != null) 
     if(SWFLoader.parent) 
      SWFLoader.parent.removeChild(SWFLoader); 

    var SWFRequest = new URLRequest (file) ; 
    SWFLoader.load (SWFRequest); 
    addChild (SWFLoader); 
} 
+0

令人敬畏的歡呼聲。 – Jack5848

相關問題