MKMapView不显示当前位置,或者更确切地说,显示任何位置(在模拟器中)

时间:2011-03-01 03:06:39

标签: objective-c mapkit core-location

我有一个MKMapView,它的委托设置为我的控制器(m)类。

以下代码:

-(BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Create location manager object
    locationManager = [[CLLocationManager alloc] init];

    // Make this instance of WhereamiAppDelegate the delegate
    // it will send its messages to our WhereamiApplDelegate
    [locationManager setDelegate:self];

    // We want all results from the location manager
    [locationManager setDistanceFilter:kCLDistanceFilterNone];

    [locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
    [mapView setShowsUserLocation:YES];

    [window makeKeyAndVisible];
    return YES;

}

然而,我所看到的只是一张没有蓝色注释点的世界地图?

2 个答案:

答案 0 :(得分:1)

模拟器并没有“真正”支持它。如果您绕过足够的检查,它将显示Apple的总部。任何GPS测试都需要一个真实的设备。

编辑:我相信你可以放一个引脚,它会显示,但就CLLocationManager的回调(通过CLLocationManagerDelegate)而言,它在模拟器中并不开心;至少是最近的那些。在3.0之前我无法说话......

答案 1 :(得分:1)

self.mapview.mapType = MKMapTypeStandard;
    self.mapview.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
    self.mapview.showsUserLocation = YES;

如果你有一个名为mapView的地图指针,这就是你所需要的,但正如Merky所说,你需要一个真实的设备。你可以做的是,当模拟器运行时,转到“Debug - > location - > own location”并输入所需坐标的坐标。