2011-12-03 13 views
0

私は右上隅に標準的なロゴがあり、そのすぐ上にメニューバーがあります。メニューバーの上には、UIloaderがあり、メニューボタンの1つを押すとphotoalbum.swfが読み込まれます。問題は、scaleContentプロパティをtrueに設定すると外部swfがロードされないということです。 falseに設定外部swfはUIloader経由でステージに読み込まれません

は、すべてが私の写真アルバムをfalseに設定scaleContentプロパティので、切断されたの下の部分は、(これは、ステージのと同じロードされたSWFファイルのサイズを作ることとUIloaderが開始される場合を除き、予想通り表示されますメニューのすぐ上に、下部が切り取られます)。

答えて

1

うーん... UILoaderの内容はわかりませんが、代わりにLoaderクラスを使用するのはどうですか?これは、SWFファイルをロードするために使用できる組み込みのFlashクラスです。

var l:Loader = new Loader(); 
l.load(new URLRequest("http://example.com/somefile.swf") 
addChild(l); 

次に、コンテンツのサイズを任意に変更できます。私は基本的なAS3の上にたくさんのフレームワークがあることを知っていますが、いつか基本的なものに戻るために多くの時間を節約します。

+0

こんにちは、ありがとう。私はLoaderオブジェクトで何もしなかった。 Loader heightパラメータを500に設定すると、ロードされたswfを見ることができません。私が高さパラメータを設定していない場合にのみ表示されます。 ac3のドキュメントには次のように書かれています。「LoaderオブジェクトにロードされたSWFファイルまたは画像は、Loaderオブジェクトの親表示オブジェクトの位置、回転、およびスケールプロパティを継承します。私の問題の経験から推測できるような次元もあります。そのため、幅と高さの設定は機能しません。 – tomaas

0

ローダーの幅と高さは、swfが完全に読み込まれた後にのみ設定できます。 swfのロードが完了するのを待ってから、幅と高さを設定する必要があります。

var loader:Loader=new Loader(); 
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete); 
addChild(loader); 
loader.load(new URLRequest("somefile.swf")); 

private function onLoadComplete(e:Event):void 
{ 
loader.width=400; 
loader.height=400; 
} 
関連する問題