我有MKMapView
,我需要对func mapView(mapView: MKMapView!, regionDidChangeAnimated animated: Bool)
进行一些操作。但是每次区域更改时都很难执行此操作,并且我只想在区域更改很多时执行它。例如,从一个城市到另一个城市。你能给点建议吗?
最佳答案
直接使用mapview没有内置方法
有一个名为_visitedRegionCenter : CLLocationCoordinate2D?
的成员变量
当regionDidChangeAnimated将新的region.center
与_visitedRegionCenter
比较时...使用CLLocation:: distanceFromLocation
获取两个坐标之间的距离
如果距离大于例如1000m做你的事,如果不是,那就不要做
如果距离大于1000,请保存新区域的位置。 :: region.center
并将其保存到_visitedRegionCenter