2016-03-07 74 views
0

在我的Adobe Air应用程序中,我有一个房间和我的播放器可以在它周围走动。我将其设置为自动以全屏方式打开,但是,当您退出全屏时它不会缩放任何东西,因此它只显示房间的边缘,您无法看到播放器或其他任何东西。我该如何做到这一点,以便当您退出全屏时,所有内容都会缩小到窗口版本,然后再回来?这是在Adobe Flash Builder 4.7中。Adob​​e Flash Builder 4.7全屏幕缩放问题

我试着通过在更新函数中放置一条If语句来缩放所有东西,它不断检查窗口是否被完全屏蔽,如果不是,它会将.x和y缩放为.5,如果再次进行全屏筛选,它会将其缩小1倍。然而,玩家会改变位置,如果我试图让X相等,那么如果我移动播放器,它就会再次执行,所以它不起作用。我也尝试在播放器和房间中使用verticleCenter和horizo​​ntalCenter,但它也不起作用。

我想知道的是,如果有一个stage.autoScale线可以解决所有问题,或者如果我必须以另一种方式手动执行,就像我尝试过的那样。

+0

你不需要“经常检查一个窗口是否被完全屏蔽”..有一个** [当你进入/退出FS模式时发送的自动事件消息](http://help.adobe.com/ EN_US/FlashPlatform /参考/动作/ 3 /闪光/活动/ FullScreenEvent.html)**。尝试设置舞台的** [缩放模式](http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/StageScaleMode.html)**例如:'stage.scaleMode = StageScaleMode .NO_BORDER;'。尝试AS3手册中的其他选项,以获取最适合您的应用程序的内容。 –

回答

0

所以你在这里有2个选项。

  1. 检查全屏事件,然后在侦听器函数中根据您的逻辑缩放所有内容。这将使您更好地控制组件和图形的缩放和可视化显示。你可以在http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS2E9C7F3B-6A7C-4c5d-8ADD-5B23446FBEEB.html

  2. 找到全屏事件处理的工作示例。允许FP根据窗口大小缩放舞台。这可以通过设置stage.scale模式来实现。有几个选项,你可以在http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/StageScaleMode.html找到。为您的应用程序使用最适合的服务。

我宁愿使用第一种方法。希望这是有道理的。