[]Laya.Browser获取宽高数值会变化,iphone6第一次加载正确,刷新几次就变大了。

class GameMain{
    public static pxTimes: number = Laya.Browser.height / Laya.Browser.clientHeight;
    constructor()
    {
        console.log('ch=' + Laya.Browser.clientHeight + ', h=' + Laya.Browser.height + ', pxTimes=' + GameMain.pxTimes);

        Laya.init(Laya.Browser.clientWidth, Laya.Browser.clientHeight, Laya.WebGL);
        Laya.stage.bgColor = '#cccccc';

        let txt: Laya.Text = new Laya.Text();
        txt.text = GameMain.pxTimes + '倍ch/h=' + Laya.Browser.clientHeight + '/' + Laya.Browser.height +
            ', cw/w' + Laya.Browser.clientWidth + '/' + Laya.Browser.width;// + ', r=' + this.row + ',' + this.col;
        txt.pos(0, 0);
        Laya.stage.addChild(txt);
    }
}
代码很简单,什么都没有jsh就是获取宽高。只测试了Android、iPhone6两个手机,iPhone6就出了两个问题。
1、竖屏时刷新几次,宽高就变大了,bia变到2千多3千多,比实际大。
2、竖屏转横屏时,直接不正确,也是变大了。
你们看看源代码是不是第一次获取宽高和后面获取宽高逻辑不一致?
 
另外一个问题是Laya.GlowFilter
滤镜不能公用吗?例如写一个 private glow: Laya.GlowFilter = new Laya.GlowFilter; 然后给10个sprite用,当点击一个sprite时,在onclick事件中加上glow效果。但是运行就报错,都还没有点。
换个写发,给每个sprite设置滤镜时new 一个glow就可以。
debug 看到方法里面new出来的类型好像是 GlowFilterActionGL, 公用的private那个却是GlowFilter还是什么,记不清楚了,直接报错,说没有_action.apply3d方法。怎么两个地方new Laya.GlowFilter的类型不一样呢?
 
已邀请:

Laya_XS

赞同来自:

第一个问题,你的引擎是哪个版本?
第二个问题,能否提供一段代码示例,看下你怎么使用的。

codekun

赞同来自:

这个接口就是有问题 
http://ask.layabox.com/questio ... _5638

要回复问题请先

商务合作
商务合作