1

我正在实现一个基于 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;
    }
}
4

1 回答 1

6

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

你想使用父类MKAnnotationView。它会让你设置图像。

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

于 2011-02-12T23:11:02.610 回答