cuixueying 游戏的完全自适应需要自己做的,就是获取到设配的屏幕尺寸后,再传参数给游戏让其自适应,跟flash里一样。laya之后也会提供相应的接供公开发者直接调用。 目前我们有提供Iflash.setSize方法让开发者发布固定机型尺寸,比如960*640类似。 如果setSize方法不设置,就会实现全屏显示,但是这样有可能会导致显示拉伸。 如果想要获取屏幕的像素:可以使用Capabilities类,如下var hh:int = Capabilities.screenResolutionY;// 指定屏幕的最大垂直分辨率。var ww:int = Capabilities.screenResolutionX;//指定屏幕的最大水平分辨率。
fftidus cuixueying 我意思是用starling根据屏幕做的适配和laya对原生层做的适配效果不一样,两个层没法对齐。IFlash.setSize(960, 540);设置了之后获取舞台大小就是固定这个值, Capabilities.screenResolutionY也是获得固定的屏幕分辨率(比如我是1920:1080),导致viewport设置总是在零点。但laya设置的原生层不在零点。
haliluya (1)Starling是一个纯粹的ActionScript3类库,它在GPU的基础上重构了Flash的显示列表(GPU可以为移动平台的应用程序提供更好的呈现能力,如ios和Android平台,最终还是基于Flash编译下,所以用也是用Flash适配就可以,不用在用laya做适配。(2)用__JS__(“Js方法()“);就可以了,用原生的Js方法去获取浏览器的分辨率。
jtscongtou 还有pc上改变浏览器分辨率获得的resize事件,用laya的时候获取不到当前窗口大小。 //[IF-JS]var fullScreenWidth = Laya.window.innerWidth; //[IF-JS]var fullScreenHeight = Laya.window.innerHeight; 直接添加到你取宽高的地方,这个写法是在JS里面取到浏览器的宽高starling需要手动设置viewport,原生层是laya自己做的适配,怎么样统一起来?viewport目前暂时还有bug导致不能正常居中有这个不设置laya适配也可以的,现在暂时调整浏览器分辨率测试吧,等新版改了那个bug就可以了