我在视图控制器中有MKMapView
我打电话:
[self.mapView setUserTrackingMode:MKUserTrackingModeFollow animated:YES];
当我导航到另一个视图控制器并且地图视图的控制器消失时,我仍然运行位置服务(我在状态栏中看到箭头)。一旦我没有看到地图,我想把它关掉,但我不知道如何在没有CLLocationManager
的情况下做到这一点...
由于
答案 0 :(得分:0)
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
if ([CLLocationManager significantLocationChangeMonitoringAvailable])
{
if (OUTPUT_LOGS) NSLog(@"Stopped monitoring for significant changes");
[[self locationManager] stopMonitoringSignificantLocationChanges];
}
[[self locationManager] startUpdatingLocation];
}
-(void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
if ([CLLocationManager significantLocationChangeMonitoringAvailable])
{
[self.locationManager startMonitoringSignificantLocationChanges];
}
[[self locationManager] stopUpdatingLocation];
}
答案 1 :(得分:0)
这似乎有效:
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
self.mapView.showsUserLocation = NO;
[self.mapView setUserTrackingMode:MKUserTrackingModeNone animated:YES];
}