0

我正在尝试编写一个 iPhone 应用程序,只需按一下按钮即可存储用户的初始位置。然后,他们可以稍后按下一个按钮,该按钮将向他们显示与他们在 MapView 中的初始位置相关的最终位置。我怎样才能做到这一点?谢谢!

4

2 回答 2

0

这是关于使用位置的迷你教程..

这里添加框架CoreLocation

首先在 .h 文件中设置委托,并将此行导入 .h 或在 .m 文件中添加此行#import <CoreLocation/CoreLocation.h>

然后在 .m 中:

- (void)viewDidLoad {
    locationManager = [[CLLocationManager alloc] init];
    locationManager.delegate = self;
    locationManager.desiredAccuracy = kCLLocationAccuracyBest;
    [locationManager startUpdatingLocation];
}


-(void)locationManager:(CLLocationManager *)manager
   didUpdateToLocation:(CLLocation *)newLocation
          fromLocation:(CLLocation *)oldLocation
{
    CLLocationCoordinate2D here =  newLocation.coordinate;
    NSLog(@"%f  %f ", here.latitude, here.longitude);
}

同样,当您想存储位置时,在您的按钮点击事件上只需像上面的方法一样获取 newLocationlocationManager

每当 Core Location 有话要对你说时,这里的locationManager委托方法 -(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation方法都会被 ping 通,这应该每隔几秒钟发生一次。这些 CLLocation 对象包含有关准确性的信息,因此您可以筛选该方法中的优点。一定要打电话[locationManager stopUpdatingLocation],然后[locationManager release]在某个时候!

于 2012-10-04T06:02:06.957 回答
0

这是一个相当广泛的问题。

这个任务有几个部分:

  1. 获取位置。
  2. 将位置保存在某处。
  3. 检索位置。

首先,看看CLLocationManager

对于第二个和第三个,最简单的选项可能是NSUserDefaults

于 2012-10-04T05:51:50.343 回答