【发布时间】:2018-03-03 02:15:18
【问题描述】:
我正在尝试在用户距离任何地图图钉 300 米时发送通知(所有图钉都来自 API)
我用..计算距离
currentLocation = CLLocationManager()
currentLocation!.distance(from: pinLoc)
我得到了正确的距离,但是,为了继续跟踪用户的位置(驾驶),我必须将我的代码放在 (didUpdateLocations) 函数中,该函数将永远循环[我不使用 stopUpdatingLocation() 因为我需要不断获取用户的位置]
有没有其他方法可以不断获取用户的位置(坐标)而不必进入无限循环!
我也用过
mapView.userTrackingMode = .follow
跟踪用户在地图上的位置。
谢谢。
【问题讨论】:
-
可以监控区域。它有一些限制,但取决于您的实现是否可以很好地工作developer.apple.com/library/content/documentation/…
-
你的意思是我将每个地图图钉设置为一个区域,然后在加入该区域时跟踪用户吗?这会是一个正确的结构吗?
-
是与否,您监控每个区域。然后你就有了在条件匹配时触发的委托方法。不需要跟踪用户。你在文档上有一些草图
-
太棒了,我将按照您描述的方式进行处理。似乎这是要走的路。非常感谢
标签: ios swift mapkit cllocationmanager