Помещение синей точки в mapKit с желаемым местоположением - PullRequest
2 голосов
/ 11 мая 2010

В демонстрационных целях мне нужно смоделировать местоположение пользователя в представлении Mapkit. Кажется, что с недокументированным API можно поместить синюю точку в любом месте вида карты. К сожалению, я не знаю, как использовать недокументированный API? Любая помощь?

Ответы [ 2 ]

0 голосов
/ 03 декабря 2011

Не уверен, что можно установить ПОЛЬЗОВАТЕЛЬСКОЕ местоположение пользователя (обычно люди используют изображение, имитирующее синюю точку пользователя). Хотя я не уверен на 100%, поэтому у вас есть шанс попробовать что-то подобное, чтобы проверить, возможно ли иметь дело с userLocation как с MKAnnotation ...

CLLocationCoordinate2D c = self.mapView.userLocation.location.coordinate;
[[self.mapView userLocation] setCoordinate:c];
0 голосов
/ 11 мая 2010

Вы это установили?

mapView.showsUserLocation = YES;

Задать конкретное местоположение немного сложнее, но, безусловно, выполнимо без недокументированных API. Смотрите код ниже:

- (void)animateToSelectedPlace:(CGFloat)zoomLevel {
    MKCoordinateRegion region;
    region.center = [self getCoordinateFromComponents:chosenLatitude:chosenLongitude];

    MKCoordinateSpan span = {zoomLevel,zoomLevel};
    region.span = span;

    [mapView setRegion:region animated:YES];
}

-(CLLocationCoordinate2D)getCoordinateFromComponents:(NSNumber*)latitude:(NSNumber*)longitude {
    CLLocationCoordinate2D coord;
    coord.latitude = latitude.doubleValue;
    coord.longitude = longitude.doubleValue;
    return coord;
}
...