Изображение вместо PIN-кода по умолчанию в платформе MapKit для iPhone?

StackOverflow https://stackoverflow.com/questions/1492832

  •  18-09-2019
  •  | 
  •  

Вопрос

Возможно ли иметь наше собственное изображение вместо pin-кода по умолчанию в MapKit map на iPhone?

Я работаю над приложением, которое будет показывать местоположения друзей так же, как Google Latitude, и мне нужно показывать изображения друзей в их местоположениях.

Это возможно с помощью JavaScript Google Map, но я хочу знать, может ли кто-нибудь дать какой-нибудь пример кода для карты на основе MapKit.

Это было полезно?

Решение

Да, это возможно.Для этого вы должны использовать MKAnnotationView вместо MKPinAnnotationView .и не используйте свойство annotation.animatesDrop.

Вот пример кода, который вы можете использовать в viewForAnnotation,

    annotation = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"try"];
    annotation.canShowCallout = YES;

    annotation.image = [UIImage imageNamed:@"image.png"];


    return annotation;

Другие советы

Вы также можете установить рамку изображения.Для этого в приведенном выше коде мы должны внести эти простые изменения.

UIImage *pinImage = [UIImage imageNamed:@"image.png"];

UIImageView *imageView = [[[UIImageView alloc] initWithImage:pinImage] autorelease];

       imageView.frame = CGRectMake(-20, 0, 40, 30);

[annotation addSubview:imageView];

И мы должны прокомментировать эту строку

// annotation.image = [UIImage imageNamed:@"image.png"];

Используя свойство span, вы можете легко увеличить масштаб в соответствии с вашими требованиями

MKCoordinateSpan промежуток;

MKCoordinateRegion region;


mapView.scrollEnabled=YES;
span.latitudeDelta = 100.0;//more value you set your zoom level will increase
span.longitudeDelta =100.0;//more value you set your zoom level will increase
mapView.showsUserLocation=YES;
region.span = span;


region.center = from.coordinate;
  [mapView setRegion:region animated:YES];
 [mapView regionThatFits:region];
[mapView addAnnotation:from];
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top