私はスウィフト2に地図上のポリラインを描画しようとしていますそれはすべてがうまく動作しますが、私はこのコードのコンパイラ警告が表示されます:スウィフト2 MKMapViewDelegate rendererForOverlayコンパイラの警告
func mapView(mapView: MKMapView!, rendererForOverlay overlay: MKOverlay!) -> MKOverlayRenderer! {
if overlay is MKPolyline {
let polylineRenderer = MKPolylineRenderer(overlay: overlay)
polylineRenderer.strokeColor = UIColor.redColor()
polylineRenderer.lineWidth = 5
return polylineRenderer
}
return nil
}
これが私に与えます警告は今、これは罰金コンパイルします
「結果とのMapView(rendererForOverlay)のパラメータは、プロトコルMKMapViewDelegateにより予想とは異なる選択性を持っている」と言うが、それバグ私は、コンパイラの警告が表示されていること。私は削除することによって!
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
への最初の行を変更した場合
、警告は消えますが、私はリターンがゼロにはできませんし、コードはもうコンパイルできないというエラーが発生します。
これも同じ問題が述べられた。このスレッドにフォローされているにもかかわらず、満足な答えが利用できない: Swift 2 MKMapViewDelegate rendererForOverlay optionality
誰もがスウィフト2になりました。この機能を使用する正しい方法上の任意の光を当てることができますか?
ありがとうございました。
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer
を、明らか普段あなたがnilを返すreturn MKPolylineRenderer()
を返すため除いて、それについてできることは何もありません:オートコンプリートは、試作品を示唆するもので行く
ありがとうございます。これにより、コードが正常に動作し、警告が取り除かれます。 –
リターンnilは私にエラーを与えます。だから私を助けて –