iPhone如何在屏幕休眠时告诉应用程序

3

我正在制作一个使用用户位置的iPhone应用程序,但是我注意到当iPhone屏幕睡眠/关闭时,手机仍在使用用户位置。因此,是否有一个函数可以告诉我屏幕何时睡眠,以便我停止更新位置信息?

@interface RideauAppDelegate : NSObject <UIApplicationDelegate, UITabBarControllerDelegate> {
    UIWindow *window;
    UITabBarController *tabBarController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UITabBarController *tabBarController;

@end

保留代码,因为似乎有一个答案要求它。 - Abizern
@Abizern 谢谢,我还没有足够的权限(但愿)自己做那件事... - Nicolas S
1个回答

5

您可以使用:

- (void)applicationWillResignActive:(UIApplication *)application {
    [[[self.tabBarController.viewControllers objectAtIndex:0] locationManager] stopUpdatingLocation]; 
    //if it is your first VC, if not change objectAtIndex: to the correct one

}

3
在Stack Overflow的主题中已经涵盖了很多有用信息,链接在这里:https://dev59.com/G3RC5IYBdhLWcg3wFdJx。 - Perception
这只是AppDelegate中的一个函数。如果我使用它,我该如何在不同的控制器中访问我的CLLocationManager变量,以便我可以调用[locationManager stopUpdatingLocation];? - thechengster
你的控制器是你的代理的属性吗? - Nicolas S
这是我的tabBarController的一部分,它是我的代理的属性。 - thechengster
好的,那就是我之前告诉你的“添加了太多代码”的问题。很高兴听到你解决了它。 - Nicolas S
显示剩余10条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接