如何设置MKMapView activityType?

时间:2014-03-05 16:34:00

标签: ios mkmapview cllocationmanager

CLLocationManager有一个名为activityType的属性,我们可以在其中设置与位置更新相关联的活动类型。

在我的应用中,我会在其上显示一个包含用户位置的MKMapView,因此我不会使用CLLocationManager。由于我们无法访问MKMapView的位置管理员,我们如何设置MKMapView的{​​{1}}?

感谢。

1 个答案:

答案 0 :(得分:2)

你不能,这可能是故意的。设置MKMapView后,CoreLocation会使用showsUserLocation = NO来确定您的位置,我认为这就是您正在做的事情。根据该属性的描述:

  

...将此属性设置为YES会导致地图视图使用Core Location框架查找当前位置并尝试在地图上显示它。只要此属性为YES,地图视图就会继续跟踪用户的位置并定期更新 。 ...

如果您想要activityTypedesireAccuracy级别的粒度,则必须使用CoreLocation API类。即CLLocationManager.

顺便说一句,我认为Apple的MKMapView正在使用重要的更改位置API来管理您在地图上的位置(可能还有AGPS)以节省电池寿命,但我可能错了。

无论如何,我只想创建CLLocationManager的实例并设置其activityType