проблема со свойством изображения MKAnnotation - PullRequest
1 голос
/ 13 февраля 2011

Я реализую приложение на основе MKMapView. В этом я использую пользовательское изображение вместо отображения булавки с помощью свойства MKAnnotationView.Image. Это не работает. Он продолжает показывать стандартную булавку красным, но не изображение, которое я тоже указываю. Есть идеи?

- (void)setPin:(MKPinAnnotationView *)aPin forAnnotation:(id <MKAnnotation>)anAnnotation {
    if (anAnnotation == self.userAnnotation) {

        aPin.image = [UIImage imageNamed:@"youarehere.png"];
        aPin.opaque = NO;

        aPin.pinColor = MKPinAnnotationColorRed;
    }
}

1 Ответ

6 голосов
/ 13 февраля 2011

Если вы используете MKPinAnnotationView, как вы, то вы не можете установить изображение только pinColor. MKPinAnnotationView имеет только pinColor и animatesDrop в качестве свойств.

Вы хотите использовать родительский класс MKAnnotationView. Это позволит вам установить изображение.

Прочитайте ссылку на класс для каждого, и это будет иметь смысл. Это один из случаев, когда Objective-C сводит меня с ума, потому что, когда вы читаете эти длинные имена классов в документах, легко сканировать вариант «Pin» в имени класса.

...