我是as3的初学者。我试图在舞台大小改变时保持对象大小和位置静止。我希望我的对象大小和位置在舞台的任何条件下都相同。舞台可以全屏,可以由用户调整大小,可以通过设备调整大小。我在屏幕上添加了一个球,当我点击球屏幕全屏时。但在全屏模式下,我的球改变了它的位置和大小。它变大了。如何将球保持在舞台的左上角。 请参阅以下屏幕截图和我的代码。
AS3代码
package {
import flash.display.MovieClip;
import flash.display.SimpleButton;
import flash.events.MouseEvent;
import flash.display.*;
import flash.geom.Rectangle;
public class mainajaira extends MovieClip {
private var _ball=new ball();
private var stagewidht:Number=stage.stageWidth;
public function mainajaira() {
// constructor code
addChild(_ball);
_ball.x=0;
_ball.y=0;
trace(_ball.height + "." + "." + _ball.width);
trace("Stage Width:" + stagewidht);
trace("Ball x: " + _ball.x);
_ball.addEventListener(MouseEvent.CLICK, fullscreen)
}
private function fullscreen(e:MouseEvent):void{
if(stage.displayState==StageDisplayState.NORMAL){
stage.displayState=StageDisplayState.FULL_SCREEN}
else if (stage.displayState==StageDisplayState.FULL_SCREEN){
stage.displayState=StageDisplayState.NORMAL}
}
}
}
答案 0 :(得分:1)
默认情况下,舞台会缩放内容(因此您的对象尺寸相同),而不是"展开"有额外的区域。您可以使用StageScaleMode进行调整。您的说明听起来像是您想要的NO_SCALE
。
典型地:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;