wx.getSystemInfoSync获取设备信息不准确

问题模块 API/组件名称 终端类型 微信版本 基础库版本
API和组件 wx.getSystemInfoSync 客户端 6.6.1 1.7.4

问题描述:在有tabBar的页面里,wx.getSystemInfoSync获取的windowHeight高度不正确,在onLoad,onShow,onReady里都试过,都不准确,好像是把tabBar的高度也算到了windowHeight里面,值大了,在onReady里使用setTimeout延迟了600后获取高度正常

测试机型:红米note4x

最后一次编辑于  01-10  (未经腾讯允许,不得转载)
收藏 0评论 0
关注问题写回答

14 个回答

  • 慧慧慧慧

    刚试了下给page设置宽高100%,然后给里面的某个子元素设置宽高100%,获取到该元素的高度,这个尺寸也是正确的

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 慧慧慧慧

    搜嘎,延迟之后确实正常了

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 初见初见

    onReady里使用setTimeout延迟了600后获取高度正常,目前就是这么做的

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 慧慧慧慧

    楼主最后怎么解决的??

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 闵仙森ༀ闵仙森ༀ

    emmmm

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 初见初见

    我试了下,是可以获取到,但是有时候是正确的,有时候又不正确,多谢

    赞同 0没有帮助
    评论 0
    复制
    01-11
  • 闵仙森ༀ闵仙森ༀ

    这是官方的说法

    赞同 0没有帮助
    评论 0
    复制
    01-10
  • 闵仙森ༀ闵仙森ༀ

    目前 getSystemInfo 在一些条件下的返回值有些问题。麻烦试下 wx.createSelectorQuery 的 selectViewport 方法获取显示区域的尺寸

    赞同 0没有帮助
    评论 0
    复制
    01-10
  • 闵仙森ༀ闵仙森ༀ

    官方说了 是已知bug,然后说了 另外个解决办法,我找下发你

    赞同 0没有帮助
    评论 0
    复制
    01-10
  • 小杰小杰

    那你可以在其他钩子函数里面获取试试看 比如页面渲染完毕之后

    赞同 0没有帮助
    评论 0
    复制
    01-10