2017-08-12 4 views
0

の更新に互換性のないポインタ型結果の型が 'MKOverlayView * _Nonnull'の関数から警告:</p> <p>互換性のないポインタ型を返す「MKCircleRenderer *」:私はMapViewのオーバーレイを作成するためのいくつかの廃止予定のコードを取り除くしようとしている今、私はこの警告facinghだコード

私は多くのQ & Aを読んでいますが、今まではこれを理解することができませんでした。私のコードに何が問題なのですか?

// 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; 
} 

答えて

0

エラーがcircleViewMKCircleRenderer *のタイプですが、あなたの戻り値の型がMKOverlayView *であることを述べています。これらのタイプは同じでなければなりません。

- (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

ありがとうございました。どうすればいいですか?私は多くの経験がありません(申し訳ございません) – A3O

+0

@ A3O私の答えを更新しました。試してみてください – 3stud1ant3

+0

@ A3Oあなたの問題を解決すれば、フィードバックをお願いします。 – 3stud1ant3

関連する問題