data-entry-class="Main"
data-orientation="landscapeFlipped"
data-scale-mode="fixedWidth"
data-frame-rate="60"
data-content-width="1040"
data-content-height="720"
data-show-paint-rect="false"
data-multi-fingered="2"
data-show-fps="true" data-show-log="true"
data-show-fps-style="x:0,y:0,size:12,textColor:0xffffff,bgAlpha:0.9">
上面是入口配置,游戏引擎是4或5均试过,部分安卓手机(与电脑端浏览器)均会有闪屏出现。
当设置data-show-paint-rect="true"后,安卓手机闪屏现象就不在出现了。但因为是会有红色框框出现,所以也不算是解决问题了。
从这个现象来看是脏矩形相关问题,请egret大牛帮忙看看,是不是引擎里哪个标志设置问题?有没有解决办法。
现在我通过吧data-show-paint-rect改成true,然后修改引擎代码egret.js,注释掉画红框的方法是可以解决闪屏问题的,如下:
for (var i = 0; i < length; i++) {
list = repaintList;
for (var j = list.length - 1; j >= 0; j--) {
var r = list[j];
//this.drawDirtyRect(r[0], r[1], r[2], r[3], context);
}
}
但仍觉得这种方法很古怪。所以还请管理员告诉下正确的使用方法。多谢。
ps下:data-show-paint-rec的值决定是用stageDisplayList or screenDisplayList,这两是什么东东,怎么区别对待?:
function showPaintRect(value) {
value = !!value;
if (this._showPaintRect == value) {
return;
}
this._showPaintRect = value;
if (value) {
if (!this.stageDisplayList) {
this.stageDisplayList = sys.DisplayList.create(this.stage);
}
this.stage.$displayList = this.stageDisplayList;
}
else {
this.stage.$displayList = this.screenDisplayList;
}
}
我来回答