0

ステージで MovieClip の AS3 コードを見つけようとしています。私のステージは、異なる画面 (異なるサイズのモニター) で比例的にサイズ変更されますが、MC は小さな画面のラップトップには大きすぎて、一部が切り取られます。助けていただければ幸いです

4

2 に答える 2

1

これを何よりも優先します。このコードは、元のレイアウトからサイズ変更されたサイズまでのスケールサイズを検出します。(注:Event.RESIZEが発生しているときにこれを使用するのが最適です)

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

var guiSize:Rectangle = new Rectangle(0, 0, 1024, 600); //original stage size, substitute this with your orginal size
var deviceSize:Rectangle = new Rectangle(0, 0,
Math.max(stage.fullScreenWidth, stage.fullScreenHeight),
Math.min(stage.fullScreenWidth, stage.fullScreenHeight));

var appScale:Number = 1;

if ((deviceSize.width/deviceSize.height) > (guiSize.width/guiSize.height)) {
    appScale = deviceSize.height / guiSize.height;
} 
else {
    appScale = deviceSize.width / guiSize.width;
}

それよりも、appScaleを使用して、お持ちのすべてのMovieClip / Spriteをスケーリングします(例:_mc.scaleX = _mc.scaleY = appScale)。この方法を使用すると、ステージのサイズが変更されるたびに、右と下の境界線が移動します。つまり、フッターを常に下から50ピクセルにしたい場合は、次のようなものを使用する必要があります。

_footer.y = stage.stageHeight - (50 * appCale);
于 2012-10-27T19:46:52.977 に答える
1

スケーリングを制限し、サイズ変更を自分で処理できます。

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

スケール モードのドキュメントを参照し、利用可能なプロパティを揃えてください。

于 2012-10-27T17:59:48.257 に答える