[]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的类型不一样呢?
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的类型不一样呢?
没有找到相关结果
已邀请:
要回复问题请先登录
2 个回复
Laya_XS
赞同来自:
第二个问题,能否提供一段代码示例,看下你怎么使用的。
codekun
赞同来自:
http://ask.layabox.com/questio ... _5638