2010-01-18 66 views
4

我正在向MapView中添加多個註釋,並使用自定義圖像而不是默認針腳。我現在用的是viewForAnnotation委託方法來設置這樣的自定義圖像:iPhone MapKit:註釋圖像重置回針腳

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

而且我也試過:

[(MKPinAnnotationView *)view setImage:[UIImage imageNamed:@"placemark.png"]]; 

現在,這些都設置圖像就好了。但是,當點擊註釋或mapType更改爲Satellite或Hybrid時,它會重置爲紅色圖釘圖像。我錯過了什麼?

回答

3

我想我明白了。我最終不得不繼承MKAnnotationView。

18

不要使用MKPinAnnotationView - 只需使用MKAnnotationView。

0
MKAnnotationView* pinView = [[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationIdentifier] autorelease]; 

pinView.animatesDrop=YES; 
pinView.canShowCallout=YES; 
pinView.image=[UIImage imageNamed:@"userMain.png"]; 

不要給MKPinAnnotation它採用默認的pin註釋。只使用MKAnnotationView對象,不要使用:

pinView.animatesDrop=YES; 
+0

我不明白你的編輯點,請詳細說明一下。 – 2012-06-12 10:44:58

+0

我認爲編輯符合區分代碼和敘述的標準。注意你的代碼是以Courier字體顯示的,而你的敘述不是。 – Rob 2012-10-20 04:24:26