收藏
回答

iOS真机selectorQuery获取高度非常不准怎么破?急!

我在movable-view里显示一个后台获取的列表,在获取数据之后通过selectorQuery获取每个分类(ingredientCategory)的高度,加起来之后设置到movable-view的高度上。

开发工具和安卓真机上都没问题,iOS上差距巨大。正常应该是1702px高度的时候iOS上获取回来只有284.9357px,而且<view class="categoryTitleBlock>在页面上显示的高度是0,但是这个类的高度在css里写了的是80rpx。

已经尝试过了在this.setData({})的回调里设置高度,也试了回调里设置setTimeOut再设置高度,问题依旧,请问怎么解决?谢谢!

wxml

<movable-area>
  <movable-view style="height: {{panelHeight}}px">
    <view class="ingredientCategory" wx:for="{{ingredientList}}" wx:for-index="cat">
      <view class="categoryTitleBlock">
        <text class="titleText" style="margin-left: 30rpx">{{item.c.name}}</text>
      </view>
      <ingredient class="ingredient" wx:for="{{item.f}}" wx:for-index="food"ingredient="{{item}}"></ingredient>
    </view>
    <view class="ingredientCategory">...</view>
    <view class="ingredientCategory">...</view>
  </movable-view>
</movable-area>


自适应高度js

  setPanelHeight: function() {
    this.createSelectorQuery().selectAll('.ingredientCategory').fields({
      computedStyle: ['height']
    }, res => {
      if (!res) {
        console.log('no selection')
        return
      }
      console.log(res)
      let height = 0
      for (let i = 0; i < res.length; i++) {
        height += Number(res[i].height.slice(0, -2))
      }
      this.setData({
        panelHeight: height + 340
      })
      console.log(height)
    }).exec()
  },
回答关注问题邀请回答
收藏

5 个回答

  • 徐小闷
    徐小闷
    2021-09-27

    我也是ios真机高度获取不准确 请问解决了吗

    2021-09-27
    有用
    回复
  • bibolibo
    bibolibo
    2021-07-08

    我也是宽度不对.就离谱.

    2021-07-08
    有用
    回复
  • JamesTerry
    JamesTerry
    2021-07-07

    computedStyle是获取样式高,不一定是实际高,真实高度需要获取rect。

    2021-07-07
    有用
    回复
  • HHHPEICHUAN
    HHHPEICHUAN
    2021-07-01

    我是获取图片太多响应太慢,导致先执行了selectorQuery,得到了一个错误的高度。然后加了个延时执行selectorQuery就可以了,还是不行就延时加大点 1000ms内



    2021-07-01
    有用
    回复
  • 😶
    😶
    2021-06-03

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2021-06-03
    有用
    回复 7
    • Shady
      Shady
      2021-06-03
      iPhone X,微信8.0.6,系统14.0.1
      代码片段:https://developers.weixin.qq.com/s/00GmXMmY7aqs
      2021-06-03
      回复
    • Shady
      Shady
      2021-06-04
      请问有结论了么?
      2021-06-04
      回复
    • Shady
      Shady
      2021-06-06
      ?????
      2021-06-06
      回复
    • KV可畏
      KV可畏
      2021-06-18
      ?
      2021-06-18
      回复
    • 
      
      2021-09-03回复Shady
      官方只会问 机型、微信版本号、系统版本号和代码片段
      2021-09-03
      2
      回复
    查看更多(2)
登录 后发表内容