Cocoa touch locationmanager未使用navigationback按钮不停止

Cocoa touch locationmanager未使用navigationback按钮不停止,cocoa-touch,cllocationmanager,Cocoa Touch,Cllocationmanager,在我的iphone应用程序中,我在后台每一分钟跟踪一次用户位置。为此,我使用uiswitch。在此帮助下,我启动/停止后台进程。当我在该跟踪选项页面中时,启动和停止会完美地启动和停止后台服务。如果我转到另一个具有该服务启动状态的页面,我无法停止服务..后台服务正在运行..但使用navigationcontroller返回按钮,我来到该页面意味着它正在工作..所以我很困惑我错过了那个..请帮助我..谢谢..但我无法理解..你能解释一下吗?(iAction)startTracking:(id)sen

在我的iphone应用程序中,我在后台每一分钟跟踪一次用户位置。为此,我使用uiswitch。在此帮助下,我启动/停止后台进程。当我在该跟踪选项页面中时,启动和停止会完美地启动和停止后台服务。如果我转到另一个具有该服务启动状态的页面,我无法停止服务..后台服务正在运行..但使用navigationcontroller返回按钮,我来到该页面意味着它正在工作..所以我很困惑我错过了那个..请帮助我..

谢谢..但我无法理解..你能解释一下吗?(iAction)startTracking:(id)sender{if(startTrackingButton.on){[locationManager startUpdatingLocation];[NSUserDefaults standardUserDefaults]setBool:startTrackingButton.on forKey:@“switchValue”];[NSUserDefaults standardUserDefaults]synchronize];}其他{[locationManager StopUpdateLocation];}在你的代码中。什么是位置启动和IsLocationServicesEnabledAmm?即使我发布了一个完整的代码作为新手开发,也无法确定这两个代码应该是什么…如果(位置启动)比位置启动有什么价值?
- (void)_stopLocation
{
    if (__locationStarted) {
        if (![self isLocationServicesEnabled]) {
            return;
        }

        [self.locationManager stopUpdatingLocation];
        __locationStarted = NO;
    }
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
    [self _stopLocation];
}