(Verwenden von iOS 5 und Xcode 4.2.)
Ich habe die Anweisungen hier befolgt: Ссылка und verwendete die MKCircle und MKCircleView Klassen, um ein Kreis-Overlay auf meinem MKMapView .
Aber was ich eigentlich will, ist eine umgekehrte Kreisüberlagerung, wie die linke Karte in der Skizze unten (momentan habe ich eine Kreisüberlagerung wie die rechts):
Für den invertierten Kreis sollte die Überlagerung die gesamte Karte abdecken - abgesehen vom sichtbaren Kreis.
Gibt es einen einfachen Weg, dies mit den MKCircle / MKCircleView-Klassen zu erreichen? Oder muss ich tiefer gehen und ein benutzerdefiniertes Overlay-Objekt / Ansicht definieren?
Danke für Ihre Hilfe:)
Ich hatte die gleiche Aufgabe und hier ist, wie ich es löse:
HINWEIS: Dieser Code funktioniert nur ab iOS7
Fügen Sie der Karte irgendwo in Ihrem View-Controller ein Overlay hinzu:
%Vor%In den MKMapViewDelegate-Methoden schreiben Sie als nächstes:
%Vor%Das MyMapOverlay selbst sollte etwas wie folgt sein:
%Vor%Und der MyMapOverlayRenderer:
%Vor%Als Ergebnis erhalten Sie genau dieselbe Ansicht wie auf dem linken Bild, das in der Frage gepostet wurde.