Как показать местоположение пользователя по умолчанию и настраиваемый вид аннотации в комплекте карт? - PullRequest
4 голосов
/ 22 октября 2009

Я использую комплект карт и показываю настроенный вид аннотации. Один из них - carImage, а другой - userImage (как текущее местоположение пользователя). Теперь я хочу показать текущее местоположение пользователя по умолчанию, которое предоставляется картой kit.but, но не могу его показать. Как мне показать синий круг + мою машину в комплекте карт?

1 Ответ

8 голосов
/ 26 октября 2009

Чтобы показать местоположение пользователя, установите для следующего свойства значение true в объекте просмотра карты

mapView.showsUserLocation = YES;

Чтобы отобразить пользовательскую аннотацию, установите свойство изображения в аннотации вида карты

 - (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation 
{
// check for nil annotation, dequeue / reuse annotation
// to avoid over riding the user location default image ( blue dot )

if ( mapView.UserLocation == annotation ) {

return nil; // display default image

}

MKAnnotationView* pin = (MKAnnotationView*)
[mapView dequeueReusableAnnotationViewWithIdentifier: PIN_RECYCLE_ID];

if ( pin == nil ) {

pin = [(MKAnnotationView*) [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier: PIN_RECYCLE_ID] autorelease] ;

pin.canShowCallout = YES;

}
else {

[pin setAnnotation: annotation];
}

pin.image = [UIImage imageNamed:@"car-image.png"];

return pin;
}
...