locationManagerShouldDisplayHeadingCalibration未被调用

时间:2015-03-04 09:01:21

标签: ios objective-c mkmapview core-location cllocationmanager

我创建了一个与信标通信的应用程序,并管理地图和locationManager。

问题在于,当显示地图时,标题校准屏幕经常出现太多,即使我实现了locationManager委托的此方法也返回NO。但它永远不会被称为:

- (BOOL)locationManagerShouldDisplayHeadingCalibration:(CLLocationManager *)manager

这是我的locationManager的配置:

self.locationManager = [[CLLocationManager alloc] init];
if ([self.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
    [self.locationManager requestWhenInUseAuthorization];
}

[self.locationManager setDelegate:self];
[self.locationManager setDistanceFilter:1];
[self.locationManager requestAlwaysAuthorization];
[self.locationManager setDesiredAccuracy:kCLLocationAccuracyBestForNavigation];
[self.locationManager startUpdatingLocation];
[self.locationManager startUpdatingHeading];

我还将MKMapView设置为MKUserTrackingModeFollowWithHeading,我在StackOverflow中看到了其他问题,指出它可能会干扰locationManager委托方法。 在这个应用程序中,跟踪用户在地图中的位置并让我的locationManager同时工作非常重要。

不知道这是一个错误还是存在解决方案。

提前致谢!

1 个答案:

答案 0 :(得分:0)

你是否设置了委托对象?你发布了配置,它不存在......