0


AIR / AS 3.0で開発されたアプリケーションが
あります。すべてのコンテンツをウィンドウの中央に配置して、アプリケーションを全画面で実行したいと思います。フルスクリーンでやってみました

stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE  

しかし、すべてのコンポーネントが必要に応じて画面の中央に配置されず(全画面表示の場合)、カットオフされるか、画面外になります。基本的に、アプリケーションは1024x768程度の低解像度で開発されましたが、フルスクリーンで実行する必要があります。また、アプリケーションは実行時にさまざまなモジュールをロードし、フルスクリーンの中央に配置されていないように見えます。アプリケーションがフルスクリーンから出ると、次のように表示されます。アプリケーションウィンドウのスクロールバー。

編集:追加されたコード:

<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
          layout="absolute" width="1024" height="768">

     <Application:ApplicationStartContainer id="aps" width="100%" height="100%">

               <mx:ModuleLoader id="moduleLoader"/>    

     </Application:ApplicationStartContainer>            

</mx:WindowedApplication>

起動時に、アプリケーションはフルスクリーンになり、モジュールローダーはサイズ1024 * 768のモジュール/swfs
をロードしますが、現在、ロードされたすべてのモジュールはx=0およびy=0に整列されます。

何か案は?

皆さんありがとう。

4

1 に答える 1

1

新しいスプライトの子として、すべての表示オブジェクトを表示オブジェクトコンテナにレイアウトし、フルスクリーンイベントをリッスンして表示オブジェクトコンテナを中央に配置します。

stage.addEventListener(FullScreenEvent.FULL_SCREEN, fullScreenEventHandler);

//assuming the registration point of 'container' is top-left
function fullScreenEventHandler(evt:FullScreenEvent):void
     {
     container.x = stage.stageWidth / 2 - container.width / 2;
     container.y = stage.stageHeight / 2 - container.height / 2;
     }

フルスクリーンモードに入るときと出るときの両方で、フルスクリーンイベントがディスパッチされることに注意してください。

于 2010-11-21T23:21:39.853 に答える