0

Flex アプリの mxml に SWFLoader があります。

<mx:SWFLoader id="swfPreview"
     width="100%" height="90%"  y="20" visible="false"/>

ボタンをクリックすると、アクション スクリプトで次のコードが実行されます。

swfPreview.addEventListener(Event.COMPLETE,loadComplete);
swfPreview.scaleContent = true;
swfPreview.load(url);

ここで、「url」はインターネット上に存在する SWF への URL です (このドメインは同じでも異なっていてもかまいません。どちらの場合でも問題に直面します)

さて、 でloadComplete、次のことを行います。

private function loadComplete(event:Event):void
{
   Alert.show("Load complete");
   swfPreview.removeEventListener(Event.COMPLETE,loadComplete);
   swfPreview.visible = true;
}

アラート ポップアップが表示されます (つまり、loadComplete が呼び出されます) が、swf が読み込まれず、何も表示できません。何が問題なのですか、何か不足しているのでしょうか、それともセキュリティ上の問題がありますか? また、イメージコントロールでswfを読み込んでみました。さらに、swf は swf に変換された pdf ファイルであるため、これはフラッシュとフレックスの間で異なるフレーム レートの問題になる可能性がありますか? どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

0

特に SWFLoader を使用したことはありませんが、読み込まれたオブジェクトをディスプレイに追加していないようです。SWFLoader が少なくとも flash.display.Loader と同じように動作する場合は、Event.COMPLETE でオブジェクトを取得して表示に追加する必要があります。何かのようなもの:

loader = new Loader();
var req:URLRequest = new URLRequest("http://example.com/your.swf");
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.load(req);

private function onComplete(e:Event):void {
    addChild(e.target.loader.content);
}

ローダーを使用した完全な例については、Vimeo プレーヤー API を確認してください。これは、ビデオ プレーヤー SWF をサイトからアプリにロードします。

http://www.vimeo.com/api/docs/moogaloop

于 2010-05-05T19:17:35.833 に答える