Ben Swift 2. Her iyi çalışıyor bir harita üzerinde bir poligon çizmenizi çalışıyorum ama bu kodu için bir derleyici uyarı alıyorum: Bu bana verecekSwift 2 MKMapViewDelegate rendererForOverlay derleyici uyarısı
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
}
uyarı Şimdi, bu ince derlemek olacak
'Sonucu ve MapView (rendererForOverlay) parametreler protokol MKMapViewDelegate tarafından beklenenden daha farklı opsiyonel olma var' diyor, ama bu beni rahatsız ediyor derleyici uyarısı gösteriyor söyledi. Ben kaldırarak!
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer {
ilk satırı değiştirirseniz
, uyarı gidecektir ama dönüş nil olamaz ve kod artık derlemek olmaz bir hata alıyorum.
Bu aynı zamanda bir aynı sorunu ifade edilmiştir bu konuya takip ama hiçbir tatmin edici cevap mevcuttur: Swift 2 MKMapViewDelegate rendererForOverlay optionality
kimse Swift 2'de şimdi bu işlevi kullanmak için doğru yolda aydınlatabilir?
Teşekkürler.
func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer
Ve görünüşe göre normalde nil dönecekti return MKPolylineRenderer()
iadesi dışında, bu konuda yapabileceğiniz bir şey yok: otomatik tamamlama prototip anlaşılacağı tarafından giderek
Bunun için teşekkürler. Bu, kodu çalışır halde tutar ve uyarılardan kurtulur. –
dönüş nil hata veriyor. bana yardım et –