2016-04-15 4 views
1

Ich habe diese Schaltfläche, die bestimmte Anmerkungsstifte auf meiner Karte anzeigen/verbergen sollte. Ich habe diese Funktion unten, aber wenn Sie es drücken, um die Stifte zu entfernen, entfernt es alle Stifte. Es sollte nur die Stifte entfernen, die innerhalb der addAttractionPinsBilka sind? Was kann ich tun, um dies zu erreichen?Entfernen Sie nicht alle Anmerkungen auf meiner Karte

Hier ist mein Code:

@IBAction func bilkaAction(sender: AnyObject) { 
    if !annotationBilkaIsVisible { 
     addAttractionPinsBilka() 
     annotationBilkaIsVisible = true 

    }else { 
     map.removeAnnotations(map.annotations) 
     annotationBilkaIsVisible = false 
    } 
} 

Hoffe ihr könnt mir :-)

+0

Der folgende Code r Emoviert alle Anmerkungen: 'map.removeAnnotations (map.annotations)' Welche Art von Anmerkungen werden in 'addAttractionPinsBilka()' hinzugefügt? Sie müssen nur solche Annotationen entfernen. –

+0

@AndreasBauer viele von ihnen sind in der addAttractionPinsBilka(): 'lassen bilka1 = Artwork (Titel: "Bilka, Hillerød", location: "Tryk für rute", Disziplin: "Butik", koordinieren: CLLocationCoordinate2D (Breitengrad : 55.931326, geographische Länge: 12.284186)) ' –

+0

Ok, die Anmerkungen sind vom Typ' Artwork'. Siehe meine Antwort unten. Ich hoffe, das hilft. –

Antwort

0

Lassen Sie uns die Anmerkungen sagen Sie in addAttractionPinsBilka() sind Artwork vom Typ hinzufügen helfen können entfernt

Der folgende Code alle Anmerkungen von diesem Typ

for annotation in map.annotations where annotation is Artwork { 
    map.removeAnnotation(annotation) 
} 
Verwandte Themen