我已經加載了在Flash CS9(AS3)中創建的SWF。我有問題將Flex應用中的Bitmap(或BitmapData)傳遞給加載的SWF。Flash CS3 SWF在flex問題中加載(位圖)
調用Flex中加載的其他函數工作,但是當我嘗試將Bitmap傳遞給加載的SWF時,什麼都不會發生。下面是一個示例代碼:
FLEX:
try{
var bm:Bitmap = (someEvent.data as Bitmap);
imageHolder.source = bm; // works fine with container inside flex app
flashSWF.setPhotoBitmap(bm);
}catch(e:Error){
tracer("error = "+e);
}
FLASH:
function setPhotoBitmap(b:Bitmap):void{
addChild(b); // throws error
}
以上拋出一個類型錯誤:錯誤#2007 大概是因爲b爲null。
是否有任何限制我應該知道,或者我在這裏做錯了什麼?
乾杯!
是什麼類型imageHolder的原因?它在哪裏定義? – 2009-08-22 00:50:59
您在加載的SWF上調用了哪些其他函數?你如何加載這個SWF?你需要在這裏提供更多關於事件流程的細節。 – 2009-08-22 00:52:49
Hi Lior,這裏有一些細節: 1)imageHolder是Flex的SWFLoader。這是Flex階段的一個可視化UI。 2)我使用Flex中的另一個SWFLoader加載Flash swf。像這樣: 3)一旦加載SWF,我這樣做:flashSWF = flashSwfLoader.content as MovieClip; 4)然後我使用flashSWF成功地調用了許多函數(在swf的時間軸中) 5)只有當Bitmap被傳遞給它的一個函數時,問題纔出現。 希望那些細節能給出更清晰的畫面。 謝謝! –
Yeti
2009-08-22 07:40:44