2016-02-25 10 views
7

मैं एक नेविगेशन एप्लिकेशनस्विफ्ट MapView MKRoutePolyline interiorPolygons: गैर मान्यता प्राप्त चयनकर्ता उदाहरण के लिए भेजा 0x14ed4b4d0

लेकिन इस एप्लिकेशन दुर्घटना जब मैं नेविगेट और दिखाने के "MKRoutePolyline

interiorPolygons करने की कोशिश कर बनाने के लिए कोशिश कर रहा हूँ: गैर मान्यता प्राप्त चयनकर्ता के लिए भेजा उदाहरण 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

आप आकर्षित करने के लिए के साथ सिर्फ आवश्यक अपने कोड को आसान बनाने में कर सकते हैं मानचित्र में? – UlyssesR

+0

आपकी त्वरित प्रतिक्रिया के लिए धन्यवाद, लेकिन मुझे पूरा यकीन नहीं है कि मेरे कोड को सरल कैसे करें ..... –

उत्तर

8

ऐसा लगता है कि आप एक लाइन प्रस्तुत करना चाहते हैं।
लेकिन बहुभुज एक आकार है
तो अपने कोड होना चाहिए:

let renderer = MKPolylineRenderer(overlay: overlay) 

लेकिन नहीं:

में
let renderer = MKPolygonRenderer(overlay: overlay) 

func mapView(mapView: MKMapView, rendererForOverlay overlay: MKOverlay) -> MKOverlayRenderer 
संबंधित मुद्दे

 संबंधित मुद्दे