Hiding kaart annotaties zonder ze te verwijderen

stemmen
6

Gebruik een MKMapView Ik heb een stapel annoatations op te laden en ik wil kunnen annotaties weergegeven met een gesegmenteerde control filteren.

Ik ben met behulp van aangepaste annotaties met een type variabele zodat ik ze kan onderscheiden van elkaar, maar ik heb niet in staat om een ​​manier om te verbergen en een subset van standpunten annotatie weer te geven op wil vinden.

De vraag is gesteld op 10/02/2010 om 00:13
bron van user
In andere talen...                            


2 antwoorden

stemmen
8

Zeker, probeer dit:

Objective-C -oplossing:

[[yourMapView viewForAnnotation:yourAnnotation] setHidden:YES]

Swift 4 oplossing:

yourMapView.view(for: yourAnnotation)?.isHidden = true

Hierdoor gaat u terug op het standpunt in verband met het opgegeven annotatie object, dan kunt u de weergave om verborgen te stellen. Hier is de documentatie .

antwoordde op 10/02/2010 om 00:41
bron van user

stemmen
0

als je wilt naar de MKAnnotationView (bubbel) te verbergen kunt u een aangepaste te maken:

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

    if (annotation==self.map.mapView.userLocation)
        return nil;


    MKAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"loc"];
    if([annotation isKindOfClass:[AnnotationCustomClass class]] ) {
        annotationView.canShowCallout = NO; // <- hide the bubble

    }

    return annotationView;

}
antwoordde op 25/09/2015 om 01:37
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more