[]Starling屏幕适配问题

starling需要手动设置viewport,原生层是laya自己做的适配,怎么样统一起来?
还有pc上改变浏览器分辨率获得的resize事件,用laya的时候获取不到当前窗口大小。
已邀请:

jtscongtou

赞同来自: cuixueying

  还有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就可以了

 
 

cuixueying

赞同来自:

游戏的完全自适应需要自己做的,就是获取到设配的屏幕尺寸后,再传参数给游戏让其自适应,跟flash里一样。
laya之后也会提供相应的接供公开发者直接调用。
 
目前我们有提供Iflash.setSize方法让开发者发布固定机型尺寸,比如960*640类似。
 
如果setSize方法不设置,就会实现全屏显示,但是这样有可能会导致显示拉伸。
 
如果想要获取屏幕的像素:可以使用Capabilities类,如下
var hh:int = Capabilities.screenResolutionY;// 指定屏幕的最大垂直分辨率。
var ww:int = Capabilities.screenResolutionX;//指定屏幕的最大水平分辨率。

haliluya

赞同来自:

 (1)Starling是一个纯粹的ActionScript3类库,它在GPU的基础上重构了Flash的显示列表(GPU可以为移动平台的应用程序提供更好的呈现能力,如ios和Android平台,最终还是基于Flash编译下,所以用也是用Flash适配就可以,不用在用laya做适配。
(2)用__JS__(“Js方法()“);就可以了,用原生的Js方法去获取浏览器的分辨率。

要回复问题请先

商务合作
商务合作