我在 -viewDidLoad:
方法中启动了位置管理器。同样,当用户移动到另一个 View 时,我需要停止它。我该怎么做?
我试图在 -viewDidUnload
中停止它,但没有成功,因为我认为它只会在内存不足时被调用。
最佳答案
您可以使用 -viewWillAppear:
和 -viewWillDisappear:
来开始和停止定位用户,而不是 -viewDidLoad
/- viewDidUnload
。可能有更好的方法来做到这一点;我在自己的一个应用程序中就是这样做的。
或者,您可以注册 UIApplication
通知,例如UIApplicationWillResignActiveNotification
,停止更新位置,以防用户按下主页按钮。我认为这就是 Maps.app 实现的行为。
关于ios - 如何在 UIViewController 消失时停止位置管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9673488/