为什么在地图首次加载时bindregionchange事件无法触发
发布于 5 年前 作者 guna 14239 次浏览 来自 问答
  • 需求的场景描述(希望解决的问题)

描述:

1.在初次进入地图页面时,无论是onload,onshow,onready周期内,若立即改变地图的视野范围设置,此时不能触发regionchange事件,故无法判断何时地图视野改变完成。此时若在视野改变时调用MapContext.getRegion()方法获取视野范围,容易得到负值,或者不正确的范围值。

2.通过mapupdated的回调或增加一定的延迟,可在地图渲染完成后,调用MapContext.getRegion(),得到正确的视野范围。

问题:

  1. 为何首次加载地图,改变视野无法触发regionchange事件,这导致回调无法处理所有的视野改变事件,让代码不统一。

  2. 而mapupdated的监听的地图渲染完成事件过多,很难加以区分。

  • 希望提供的能力
  1. 希望只要改变视野范围,就能触发regionchang事件。

  2. 若不能提供上述能力,希望能提供地图初始化完成时的回调方法。

3 回复

不同的手机表现不一样  我现在知道的  华为mate20,三星Glasy S7 edge这两个手机 首次不触发

苹果 和 很多android手机都会触发

测试了下,是可以的在首次加载的是,有拖动改变视野的时候,有触发事件:

我是在开发工具上首次可以触发,但是在真机上首次无法触发

回到顶部