2012-04-16 52 views
1

我有一个典型的问题。在我的应用程序中,我正在处理应用程序委托方法iOS - 应用程序委托 - 使用CLLocationManager调用didBecomeActive

- (void)applicationDidBecomeActive:(UIApplication *)application 

刷新UI。

由于我的应用程序不会终止并在后台运行,所以当应用程序进入活动状态时,此方法正在调用并正常工作。
但在我的视图控制器之一,我创建CLLocationManager对象

self.locationManager = [[CLLocationManager alloc] init]; 
self.locationManager.delegate = self; // send loc updates to myself 

的问题是,正在创建此位置管理对象时,应用程序委托的“applicationDidBecomeActive”也被称为是没有必要的为我处理。当位置管理器对象被初始化时,我应该如何忽略这个调用?

回答

0

很奇怪的是,这样的称呼occures,但如果没有办法阻止它,只是做一个标志您的默认值,水木清华艾克callAfterSettingDelegate,并在DidBcomeActive检查,如果有人以后调用,忽略此调用并将该标志设置为零。

+0

处理所有事情的标志是不正确的。如果你继续添加标志,代码将被填充标志,而不再是其他标志。 – Satyam 2012-04-25 01:39:07

相关问题