Egret之橫豎屏及適配方式

一 : 對於方向鎖定的 , 以豎屏爲例

        if (egret.Capabilities.isMobile == true) {
            this.stage.orientation = egret.OrientationMode.PORTRAIT;
            this.stage.scaleMode = egret.StageScaleMode.EXACT_FIT;
        }
        else {
            this.stage.orientation = egret.OrientationMode.AUTO;
             this.stage.scaleMode = egret.StageScaleMode.SHOW_ALL;(比如 : 640 * 1134)全部顯示出來(在PC瀏覽器上)
        }

二 : 對於方向不鎖定(主要針對移動終端)

egret.OrientationMode.AUTO

private setResize() {
        if( this.stage.stageHeight / this.stage.stageWidth < 1.77 ){
                this.stage.scaleMode = egret.StageScaleMode.FIXED_HEIGHT;
        }else{
                this.stage.scaleMode = egret.StageScaleMode.FIXED_WIDTH;
        }
}

可以使用this.stage.addEventListener(egret.Event.RESIZE, this.setResize, this);觸發
注意 , 保存一份this.stage 如 ,
/**

  • 獲取遊戲Stage對象
  • @returns {egret.MainContext}
    */
    public getStage():egret.Stage {
    return egret.MainContext.instance.stage;
    }

以上this.stage , 都需要替換成 egret.MainContext.instance.stage

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章