收藏
回答

movable-view 缩放后部分机型可移动区域异常

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug movable-view 微信安卓客户端 8.0.1 2.15.0

movable-view 设置 scale 之后对其进行缩放操作,缩放之后 movable-view 的可移动区域为缩放之前的可移动区域(可移动区域未跟随操作缩放),导致缩放之后的 movable-view 无法拖动、无法拖动至边界等。

复现表现视频:http://bsvote.yolewa.com/1609122892880828.mp4

PS:目前在 一加7 Pro、红米 K30 Pro、iPhone XS Max 测试均出现该问题,华为 P30 未复现该 BUG;

回答关注问题邀请回答
收藏

3 个回答

  • 天子一剑
    天子一剑
    05-20

    我最近也遇到类似的情况,后来慢慢试,发现一个规律,就是movable-area和movable-view的width和height必须是整数放大后才能拖动,我代码用的是动态计算高度,所以有时会是小数,发现小数情况下都拖动不了,改成整数,试了都可以,如果你也是动态计算,计算的结果可以取整

    05-20
    有用
    回复 6
    • lyxhris
      lyxhris
      05-21
      嗯,你的情况可能不是和我的相同,我在代码片段中并没有动态计算两个组件的高度或宽度。但我还是测试了使用整数的 px, rpx 等单位设置长宽,再进行放大拖动,结果依旧是拖不动,你可以使用我的代码片段试一试?
      05-21
      回复
    • 絮舞飞扬
      絮舞飞扬
      06-28回复lyxhris
      你的宽度和设为了相对值,这个数值实际计算出来后可能为小数(比如屏幕宽度为368.444px,60vw就是221.064px,还是小数),这样子就无法拖动了,必须保证实际渲染后的值为整数
      06-28
      回复
    • 絮舞飞扬
      絮舞飞扬
      06-28
      你看这个iPhone XS Max的movable-view计算出来的值就是小数,所以放大后无法移动
      06-28
      回复
    • lyxhris
      lyxhris
      06-29回复絮舞飞扬
      感谢,确实是这个问题;其实在你第一次回答的时候我就尝试过,但在我的手机上(一加7 Pro),即使我设置了整数值 px 单位的宽高,实际渲染却还是小数(设置 300px 实际渲染为 300.000030517581px、设置200px 实际渲染为 200.00001525878906px);所以可能这个办法无法解决所有机型的这个问题。
      06-29
      回复
    • 絮舞飞扬
      絮舞飞扬
      06-29回复lyxhris
      直接在movable-area上面写style=“height:300px”实际渲染出来是300.000030517581px??这么神奇的吗?
      06-29
      回复
    查看更多(1)
  • Lyra🍊
    Lyra🍊
    03-09

    老哥这个问题解决没有?

    03-09
    有用
    回复 1
    • lyxhris
      lyxhris
      03-11
      没有呢兄dei,已经是第二遍反馈了,追问了一个多月,没有回复
      03-11
      回复
  • peng
    peng
    02-22

    自己写吧,之前我也用这个组件遇到问题一些问题。听说很多坑。

    02-22
    有用
    回复 3
    • lyxhris
      lyxhris
      02-22
      唉,之前是没有遇到这个缩放后不能拖动的问题的,不知道是哪次微信更新之后就突然有了。
      02-22
      回复
    • lyxhris
      lyxhris
      02-22
      线上本来用得好好的,突然就这样了。
      02-22
      回复
    • peng
      peng
      02-22回复lyxhris
      我邀请官方的次数用完了 没官方回复,下个月私信我,我给你邀请官方
      02-22
      回复
登录 后发表内容
问题标签