我的註釋圖像是第一次添加好後。每個註釋都有一個帶有數字的圖像。當我滾動地圖和方法「viewForAnnotation」是被稱爲(爲第二次)結束,錯誤的圖像被證明。它似乎是被退回錯誤註釋...Mapview:註釋圖像錯誤viewForAnnotation
ViewAnnotation方法:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation{
static NSString *identifier = @"pin";
VBAnnotationView *view = (VBAnnotationView *)[self.MapView dequeueReusableAnnotationViewWithIdentifier:identifier];
if (view == nil) {
view = [[VBAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
}
return view; }
請注意,VBAnnotationView是我自定義的MKAnnotationView。
如果「視圖」不是零,則「dequeueReusableAnnotationViewWithIdentifier」找到的視圖將返回錯誤的圖像。當我註釋掉檢查「view == nill」時,所有註釋上的圖像都是正確的。
爲了最優化,如果註釋已經存在,我檢查方法「viewForAnnotation」。取消檢查註釋是否已存在時,圖像顯示正確。
你的意思是MKAnnotationView而不是VBAnnotationView? – Camus 2013-02-20 00:48:57
嗨加繆,VBAnnotationView是我的自定義MKAnnotationView。我在這個問題上加了這個。 – 2013-02-20 00:52:23