yiyangest / react-native-baidumap

baidumap sdk for react-native
38 stars 28 forks source link

onRegionChange 无效 #12

Closed qazs closed 8 years ago

qazs commented 8 years ago

你好,请问onRegionChangeonRegionChangeComplete是怎么用的?我一直得不到数据。。

render  {
    return (
    <MapView
      ref="baiduMap"
      style={stylesMap.map}
      region={this.state.region}
      onRegionChange={this._onRegionChange}
      onRegionChangeComplete={this._onRegionChangeComplete}
      showsUserLocation={true}
      userLocationViewParams={{accuracyCircleFillColor: 'red', image: require('./start_icon.png')}}
    />
    )
}

_onRegionChange(region) {
  console.log("onRegionChange", region);
}

_onRegionChangeComplete(region) {
 console.log("onRegionChangeComplete", region);
}
yiyangest commented 8 years ago

android版本暂时还不支持这两个事件

weixingsun commented 8 years ago

@yiyangest 我的很奇怪,在iOS 9.3.2手机上,baiduSDK 4.0,在放大地图过程中, console.log显示onRegionChange和onRegionChangeComplete会被调用很多次(continuous=true/false都有),有时是无限循环(地图已经不动了),手机会死机,但有时不会,请问是什么问题?
我看到RCTBaiduMapManager.m里面有个regionChangeObserveTimer,先研究一下 @qazs 我这有个临时的https://github.com/weixingsun/react-native-baidumap 等我测试完了会merge进来

qazs commented 8 years ago

@weixingsun 这个好像也能达到一样效果: http://api.map.baidu.com/lbsapi/cloud/android_refer/com/baidu/mapapi/map/MKMapViewListener.html#onMapMoveFinish()。

weixingsun commented 8 years ago

@qazs 谢谢了,好像是我的region属性传递的问题,参照了googlemap的实现弄了一个initialRegion,正在测试。应该不是sdk的问题。

qazs commented 8 years ago

@weixingsun 我试了你的版本,onRegionChange能用了。牛!