2017-08-12 1 views
0

Ich versuche, in einem MapView für die Schaffung eines Overlay loszuwerden einige depricated Code zu bekommen und jetzt bin ich facingh diese Warnung:Achtung: nicht kompatibel Zeigertyp auf Code zu aktualisieren

Inkompatible Zeigertypen Rückkehr ‚MKCircleRenderer *‘ aus einer Funktion mit Ergebnistyp ‚MKOverlayView * _Nonnull‘

ich habe in dieser Angelegenheit eine Menge Q & A die gelesen, aber bis jetzt war ich es, um herauszufinden, nicht in der Lage. Was ist falsch an meinem Code?

// Create overlay 
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay{ 

MKCircleRenderer *circleView = [[MKCircleRenderer alloc] initWithOverlay:overlay]; 
circleView.fillColor = [[UIColor cyanColor]colorWithAlphaComponent:0.5]; 
circleView.strokeColor = [[UIColor blueColor]colorWithAlphaComponent:0.8]; 
circleView.lineWidth = 1; 
return circleView; 
} 

Antwort

0

Fehler sagen, dass circleView ist Art von MKCircleRenderer * aber Ihr Rückgabetyp ist MKOverlayView *. Diese Typen sollten gleich sein.

- (MKCircleRenderer *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay{ 

MKCircleRenderer *circleView = [[MKCircleRenderer alloc] initWithOverlay:overlay]; 
circleView.fillColor = [[UIColor cyanColor]colorWithAlphaComponent:0.5]; 
circleView.strokeColor = [[UIColor blueColor]colorWithAlphaComponent:0.8]; 
circleView.lineWidth = 1; 
return circleView; 
} 
+0

Danke, können Sie mir einen Hinweis geben, wie man das macht? Ich habe nicht viel Erfahrung (sorry) – A3O

+0

@ A3O Ich aktualisierte meine Antwort, versuchen Sie es – 3stud1ant3

+0

@ A3O geben Sie bitte Feedback, wenn es Ihr Problem löst – 3stud1ant3

Verwandte Themen