我正在使用MapKit來顯示位置之間的方向,我正在尋找一種方法來添加註釋,該註釋的作用類似於Apple Maps應用程序中的路線註釋,其中註釋顯示每個路線旅行時間(如下圖所示)。我已經正確地繪製了方向,手頭的問題是如何計算沿路線的一對座標。也就是說,在哪裏放棄註釋。沿着MapKit路線的註釋
我想了一下使用MKDirection
(它包含完整的方向,一步一步),但我不知道如何生成一對座標在路徑中間的某處。
我一直沒能在MapKit文檔中找到任何支持。有任何想法嗎?
我這是怎麼生成的路線並顯示。
- (void)generateRoute {
MKDirectionsRequest *request = [[MKDirectionsRequest alloc] init];
request.source = [MKMapItem mapItemForCurrentLocation];
request.destination = self.destinationMapItem;
MKDirections *directions = [[MKDirections alloc] initWithRequest:request];
[directions calculateDirectionsWithCompletionHandler:
^(MKDirectionsResponse *response, NSError *error) {
if (error) {
// Handle Error
} else {
[self showRoute:response];
}
}];
}
- (void)showRoute:(MKDirectionsResponse *)response {
[self.mapView removeOverlays:self.mapView.overlays];
for (MKRoute *route in response.routes)
{
[self.mapView addOverlay:route.polyline level:MKOverlayLevelAboveRoads];
}
[self fitRegionToRoute];
}
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id <MKOverlay>)overlay
{
MKPolylineRenderer *renderer = [[MKPolylineRenderer alloc] initWithOverlay:overlay];
renderer.strokeColor = [UIColor blueColor];
renderer.alpha = 0.7;
renderer.lineWidth = 4.0;
return renderer;
}
你想畫的路線,以及你想要在路線中間放棄註釋 – iPrabu
我也想繪製路線(我已經在做)。 –
我不明白你爲什麼需要向疊加層添加註釋。你知道疊加層也是註釋嗎? – Desdenova