2016-05-23 9 views
1

Ich versuche, ein MKPolyline mit GPS-Koordinaten zu zeichnen und die aktuelle Position des Benutzers entlang dieser Polylinie anzuzeigen. Ich möchte jedoch nicht die Basiskartenebene anzeigen, ich möchte nur einen transparenten Hintergrund haben.MKMapView Base Map Layer ausblenden

Ist das möglich? Wie kann ich das machen? Swizzling? Dritte Seite? Etwas anderes? Alles ist im Spiel.

Dank

Antwort

0

Sie können wie etwas tun,

NSLog(@"mapview background,%@",myMapView.subviews); //here myMapView is MKMapView object! 

for (int i = 0; i < myMapView.subviews.count; i++) { 


    if ([[myMapView.subviews objectAtIndex:i] isKindOfClass:[UIView class]]) { 

     UIView *tempView = (UIView*)[myMapView.subviews objectAtIndex:i]; 


     tempView.alpha = 0; 

    } 


} 

Hope this :)

+0

Dies macht die Polylinie nicht sichtbar. – Geoff

0

Anstatt Tauchen durch die Subviews der Kartenansicht helfen, würde ich empfehlen, einen eigenen zu implementieren versuchen MKTileOverlay Klasse mit canReplaceMapContent festgelegt auf YES und voll transparente Kacheln. Meine Vermutung ist, dass die Kartenansicht einfach ihre backgroundColor hinter den Kacheln zeichnen würde, und Sie könnten das auf clearColor setzen.

Es gibt eine pretty good NSHipster article, mit der Sie beginnen können.