2010-09-10 3 views
13

Ich habe MapKit Fähigkeit zu zeichnen benutzerdefinierte Anmerkung Bilder mit dem folgenden Code erweitert:Erweiterte mapView: viewForAnnotation Jetzt No Blue Dot

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation{ 
    NSLog(@"Drawing a cloud on the map"); 
    MKAnnotationView *view; 
    if(annotation != mapView.userLocation){ 
     view=[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"parkingloc"]; 
     view.image=[UIImage imageNamed:@"placemarkCloud.png"]; 
     [view setCanShowCallout:YES]; 
     [view setRightCalloutAccessoryView:[UIButton buttonWithType:UIButtonTypeDetailDisclosure]]; 
    } 
    else{ 
     view= 
    } 
    return view; 
} 

Meine Frage ist, was soll ich view = zu machen, um das iPhone gebaut zu behalten im blauen Punkt. Sie können sehen, dass ich mein benutzerdefiniertes Bild, das für den Punkt gezeichnet wird, eliminiere, aber ich weiß nicht, wie es als Standard angezeigt werden soll.

Antwort

47

Legen Sie nichts in das Else. Ich mache die folgende Überprüfung. Ich denke, das ist von Apple-Beispielcode abgeleitet.

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation{ 

if ([annotation isKindOfClass:[MKUserLocation class]]) { 
    //Don't trample the user location annotation (pulsing blue dot). 
    return nil; 
} 

//Continue on to your regular code here.