与MKAnnotation图像属性的问题

时间:2011-02-12 21:41:58

标签: iphone cocoa-touch mkannotation mkannotationview

我正在实现一个基于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 个答案:

答案 0 :(得分:6)

如果您使用MKPinAnnotationView,那么您无法仅将图像设置为pinColor。 MKPinAnnotationView只有pinColoranimatesDrop作为属性。

您想使用父类MKAnnotationView。它可以让你设置图像。

阅读每个类的参考,这将是有意义的。这是Objective-C让我疯狂的一次,因为当您在文档中阅读那些长类名时,很容易扫描类名中的“Pin”变体。