2011-10-13 1 views
0

글쎄, 내 게임을 전체 화면에서 실행하는 데 많은 방법을 시도했지만, 불가능한 것 같습니다. 여기에 지금까지 시도한 작업은 다음과 같습니다AS3 : 전체 화면으로 내 영화 클립을 만들 수 없습니다.

코드 1 :

stop(); 
stage.stageWidth = Capabilities.screenResolutionX; 
stage.stageHeight = Capabilities.screenResolutionY; 


var arrayStars:Array = []; 
for(var i:int = 0; i<260; i++) 
{ 
    var star:Star = new Star(); 

    star.x = Math.floor(Math.random() * stage.stageWidth); 
    star.y = Math.floor(Math.random() * stage.stageHeight); 

    addChild(star); 
    arrayStars.push(star); 
} 

코드 2 :

stop(); 
stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE; 
var sX:Number =stage.stageWidth; 
var sY:Number = stage.stageHeight; 


var arrayStars:Array = []; 
for(var i:int = 0; i<260; i++) 
{ 
    var star:Star = new Star(); 

    star.x = Math.floor(Math.random() * sX); 
    star.y = Math.floor(Math.random() * sY); 

    addChild(star); 
    arrayStars.push(star); 
} 

코드 3 : 코드 2와 유사하지만, 대신에 변수 SX 및 SY를 사용하는 나는 stage.stageWidth와 stage.stageHeight를 직접 사용했다. 주된 문제는 앱이 전체 화면에서 실행되는 것을 얻지 못하는 것입니다. 그러나 동영상 클립은 모든 화면을 덮지 않고 모든 영역에 머물러 있어야합니다. 문제는 전체 화면 메서드와 관련이 없거나 무작위 생성기와 관련이 없을 수도 있습니다.

답변

1

무대 전체 화면으로 크기를 조정하고 다시는 예를 들어 마우스 클릭 fo를, 사용자 itteraction에서 수행해야합니다 :

문서에서

: "전체 화면 모드는 마우스 클릭이나 키에 대한 응답으로 시작된다 사용자가 누르지 않아도 영화는 Stage.displayState를 변경할 수 없습니다. "

static public function handleStageDisplayStateChange (e : MouseEvent) : void 
{ 
    if (stage.displayState == StageDisplayState.NORMAL) 
     stage.displayState = StageDisplayState.FULL_SCREEN; 
    else 
     stage.displayState = StageDisplayState.NORMAL; 
} 
0

실제로 코드는 스테이지가 실제로 전체 화면으로 전환되기 전에 실행됩니다. 사용해보기 :

private function OnFullScreenButtonMouseClick(_e:MouseEvent):void { 
    stage.addEventListener(Event.RESIZE, OnResize, false, 0, true); 
    stage.align = StageAlign.TOP_LEFT; 
    stage.scaleMode = StageScaleMode.NO_SCALE; 
    stage.displayState = StageDisplayState.FULL_SCREEN; 
} 
... 
function OnResize(event:Event):void { 
    var sX:Number =stage.stageWidth; 
    var sY:Number = stage.stageHeight; 


    var arrayStars:Array = []; 
    for(var i:int = 0; i<260; i++) 
    { 
     var star:Star = new Star(); 

     star.x = Math.floor(Math.random() * sX); 
     star.y = Math.floor(Math.random() * sY); 

     addChild(star); 
     arrayStars.push(star); 
    } 
} 
관련 문제