代码之家  ›  专栏  ›  技术社区  ›  kardolus

用Redux反应本地地图:突变区域变化

  •  3
  • kardolus  · 技术社区  · 9 年前

    使用以下各项:

    • Redux公司

    我对如何更新我的状态有点困惑。地图区域我有手动和自动(animateToCoordinate)动作来触发状态更改。我不确定是使用onRegionChange、onRegionChangeComplete还是onMapReady来更新与我的地图关联的当前区域。到目前为止,我尝试过的所有组合都会产生断断续续的动画,其中地图会跳回到以前的状态(区域)。

    到目前为止,最有效的方法是在onRegionChange和onRegionChangeComplete中使用新区域更新局部变量,然后在onMapReady上调度该更改。。但这仍然不理想,也不稳定。

    似乎onRegionChangeComplete调用得太早了。

    3 回复  |  直到 9 年前
        1
  •  3
  •   kardolus    9 年前

    最终解决了这个问题的是在MapView组件中设置初始区域,而不是区域。一旦我添加了initialRegion并删除了region,断断续续的动画就不再是问题了。

        2
  •  2
  •   Vee6    9 年前

    MapView 的区域,然后使用 onRegionChangeComplete 触发 setState 在受控的拖放式移动中,它可以很好地工作,但是,当拖动地图并放开它时,它将滑动直到停止。在这种情况下 设置状态 通话的视觉效果并不总是很好,但这是我能在iOS上实现的最接近的功能。

        3
  •  0
  •   aryalprakash    7 年前

    正在删除 region = {this.state.region} MapView 为我解决了类似的问题。