0

我是 iOS 编程新手,我需要实现一个位置感知应用程序。我已经可以使用重要的位置更改服务,但是当我离开我的视图时,它会停止接收新的更新。

如果我在该视图上输入背景,我仍然会得到更新并且一切都很好,但是如果我将视图更改为其他视图,它就会停止......

我认为以这种方式发生是合乎逻辑的,但我也需要收到关于我其他观点的更新......

我应该为我拥有的每个视图复制代码,还是可以让我在任何视图中接收更新,比如让我的应用程序回答而不是每个视图。

谢谢, GustDD

4

2 回答 2

1

你可以 :

  1. 在应用程序委托中定义位置实例,以便您可以随时访问它。

  2. 用于NSNotificationCenter在位置更改时发布通知。

  3. 当位置发生变化时,使用代表传递信息。

于 2012-06-26T09:41:01.760 回答
1

在 AppDelegate.m 中添加此代码

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:  (NSDictionary *)launchOptions
 {
    if(!locationManager) {
         locationManager = [[CLLocationManager alloc] init];
         locationManager.delegate = self; 
         locationManager.desiredAccuracy = kCLLocationAccuracyBest; 
         locationManager.distanceFilter = kCLDistanceFilterNone;
         [locationManager startUpdatingLocation];
       }
 }

 - (void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation  *)newLocation fromLocation:(CLLocation *)oldLocation {
//here you will get upadated location
    //here you can add delegate method call to where you want to use this location or you can create a shared variable

}
于 2012-06-26T09:43:02.713 回答