我自己的一点心得,由于横屏的体验现阶段并不好,所以这个方案只对竖屏.


找到launcher文件夹下的egret_loader.js文件(EGRET 1.6)

修改代码如下

varcontext=egret.MainContext.instance;context.touchContext=newegret.HTML5TouchContext();context.deviceContext=newegret.HTML5DeviceContext();context.netContext=newegret.HTML5NetContext();varstageWidth=document.documentElement.clientWidth;varstageHeight=document.documentElement.clientHeight;varwidth;varheight;varscale;if(stageWidth>stageHeight){width=540;height=960;}else{width=stageWidth;height=stageHeight;}scale=540/width;egret.StageDelegate.getInstance().setDesignSize((width*scale)>>0,(height*scale)>>0);context.stage=newegret.Stage();context.stage.scaleMode=egret.StageScaleMode.SHOW_ALL;


基本思想:得到浏览器的宽高,然后把宽度定死成540(之所以选择540,是我多次试验后比较好的一个宽度,具体就不详解了,这个数值也可以是其它),高度由实际宽度和540的比例,算出来的适配540的值,然后缩放规则直接用SHOW_ALL,这样在浏览器内就不产生黑边了.


注:这个方案高度是动态的,所以游戏逻辑里要对这个高度做一些自适应的规则.