CoreLocation,MapKit错误

时间:2012-10-22 12:09:20

标签: objective-c ios mapkit core-location

我试图在Mapkit中显示我的当前位置,这是代码

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    //Make this controller the delegate for the map view.
    self.MapView.delegate = self;     

    // Ensure that you can view your own location in the map view.
    [self.MapView setShowsUserLocation:YES];
    locationManager = [[CLLocationManager alloc] init];
    [locationManager setDelegate:self];
    [locationManager setDistanceFilter:kCLDistanceFilterNone];
    [locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
}

我写了这个Mapkit of Mapkit

#pragma mark - MKMapViewDelegate methods. 
- (void)mapView:(MKMapView *)mv didAddAnnotationViews:(NSArray *)views {    
    MKCoordinateRegion region;
    region = MKCoordinateRegionMakeWithDistance(locationManager.location.coordinate,2000,2000);


    [mv setRegion:region animated:YES];
}

但是我在埃及找到了错误的位置我在美国给了我这个 任何人都能帮我???

2 个答案:

答案 0 :(得分:1)

以防万一:如果您使用模拟器,位置将不是您的真实位置。您必须在模拟器中设置您的位置: 调试 - >位置 - >自定义位置(或其他任何内容)

答案 1 :(得分:1)

首先。

你没用过

[locationManager startUpdatingLocation];

请在启动位置管理器变量后添加此行。如果您在模拟器中看到美国的这个位置,也请告诉我。

如果是:您的模拟器模拟用户首选项给出的位置。进入模拟器窗口,您可以根据自己的选择显示自定义位置。默认情况下,它被选为美国。

希望它能解决你的问题。