小游戏开发
今天用wx.getMenuButtonBoundingClientRect做排版,在开发工具里选各个机型都很完美,
上真机后就有错位,小米和iPhonexs都有错位,
然后研究了下,将纵向加上sysInfo.statusBarHeight/sysInfo.pixelRatio,然后小米正常了,但iPhonexs还是不行,开发工具里也错位了
wx.getMenuButtonBoundingClientRect的top到底是啥含义,离屏幕上边?离状态栏下边?还是其他?这个函数应该怎么用才能统一呢?
代码片段https://developers.weixin.qq.com/s/EUcK4lmf7h5T
代码如下
let canvas = wx.createCanvas();
let ctx = canvas.getContext(‘2d’)
function loop(){
let menuRect = wx.getMenuButtonBoundingClientRect();
ctx.fillStyle = “black”;
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.fillStyle = “white”;
ctx.fillRect(menuRect.left, menuRect.top, menuRect.width, menuRect.height);
}
setInterval(loop, 1000 / 60);
开发工具里
真机上 小米5splus