2
この質問のSOの答えは、Objective-cを使用しているか、Swift 2を使用しています。いずれにしても、最初の座標は(緯度、 、2番目のポイント(coordinates.latitude、coordinates.longitude)に適用されます。これは私がこれまでに取得することができたものですが、それでも私は2つの問題を抱えて:MapKit Swiftを使用して2つの座標間のパスを描く
Value of type 'MKDirectionsRequest' has no member 'setSource'
Value of type 'MKDirectionsRequest' has no member 'setDestination'
私は、このページからこのコードを得た任意の方法を:http://studyswift.blogspot.com/2014/10/mkdirections-draw-route-from-location.html
は、これはこれまでのところ私のコードです:
@IBOutlet weak var myMap: MKMapView!
var myRoute : MKRoute?
私は、次のしている
viewDidLoad
インサイド
:後
let directionsRequest = MKDirectionsRequest()
let markFirstPoint = MKPlacemark(coordinate: CLLocationCoordinate2DMake(lat, long), addressDictionary: nil)
let markSecondPoint = MKPlacemark(coordinate: CLLocationCoordinate2DMake(coordinates.latitude, coordinates.longitude), addressDictionary: nil)
directionsRequest.setSource(MKMapItem(placemark: markSecondPoint))
directionsRequest.setDestination(MKMapItem(placemark: markFirstPoint))
directionsRequest.transportType = MKDirectionsTransportType.automobile
let directions = MKDirections(request: directionsRequest)
directions.calculate { (response:MKDirectionsResponse!, error: Error!) -> Void in
if error == nil {
self.myRoute = response.routes[0] as? MKRoute
self.myMap.add((self.myRoute?.polyline)!)
}
}
を私はこれを持っている:
func mapView(mapView: MKMapView!, rendererForOverlay overlay: MKOverlay!) -> MKOverlayRenderer! {
var myLineRenderer = MKPolylineRenderer(polyline: (myRoute?.polyline)!)
myLineRenderer.strokeColor = UIColor.red
myLineRenderer.lineWidth = 3
return myLineRenderer
}
は、私はこのコードが動作するように得ることができる方法はありますか?
感謝の男、それが働きました。 'スレッド1:致命的なエラー:オプション 'をアンラープしている間に予期せずnilが見つかった' この行にある: 'self.myMap.add((self.myRoute?.polyline)!)' – codeDojo
それはあなたに別の質問を投稿すべき完全に別個の問題です。しかし、それを行う前に、https://stackoverflow.com/questions/32170456/what-does-fatal-error-unexpectedly-found-nil- while-unwrapping-an-optional-valu – rmaddy