2016-02-25 7 views
7

を送りましたインスタンス0x14ed4b4d0 "SWIFTのMapView MKRoutePolyline interiorPolygons:認識されていないセレクタがに送信された:認識されていないセレクタが、私は「MKRoutePolyline</p> <p>interiorPolygonsをナビゲートして表示するようにしようとしたとき、ナビゲーションアプリ</p> <p>しかし、このアプリのクラッシュを作成しようとしているインスタンスに0x14ed4b4d0

私のコードで何が間違っていますか?

import UIKit 
import MapKit 
class MapViewController: UIViewController, MKMapViewDelegate { 
var farm:Farm! 

var currentPlacemark:CLPlacemark? 

let locationManager = CLLocationManager() 
var currentTransportType = MKDirectionsTransportType.Automobile 
var currentRoute:MKRoute? 




@IBOutlet var mapView:MKMapView! 
@IBAction func showDirection(sender: AnyObject){ 
    let directionRequest = MKDirectionsRequest() 

    directionRequest.source = MKMapItem.mapItemForCurrentLocation() 
    let destinationPlacemark = MKPlacemark(placemark: currentPlacemark!) 
    directionRequest.destination = MKMapItem(placemark: destinationPlacemark) 
    directionRequest.transportType = currentTransportType 

    let directions = MKDirections(request: directionRequest) 

    directions.calculateDirectionsWithCompletionHandler { (routeResponse, routeError) -> Void in 

     guard let routeResponse = routeResponse else { 
      if let routeError = routeError { 
       print("Error: \(routeError)") 
      } 

      return 
     } 

     let route = routeResponse.routes[0] 
     self.currentRoute = route 
     self.mapView.removeOverlays(self.mapView.overlays) 
     self.mapView.addOverlay(route.polyline, level: MKOverlayLevel.AboveRoads) 



    } 
} 


func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer { 
    let renderer = MKPolygonRenderer(overlay: overlay) 
    renderer.strokeColor = UIColor.yellowColor() 
    renderer.lineWidth = 3.0 

    return renderer 

} 
+0

let renderer = MKPolygonRenderer(overlay: overlay) 

あなたが描くのにちょうど必要としてコードを単純化でき
が、ポリゴンがそうあなたのコードがあるべき形
です地図には? – UlyssesR

+0

あなたのクイックレスポンスに感謝しますが、私のコードを簡素化する方法はかなりわかりません..... –

答えて

8

あなたは線を描いているようです。

let renderer = MKPolylineRenderer(overlay: overlay) 

でもない:

func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer 
関連する問題