使用mkmapview显示当前位置和坐标之间的路线。 我使用折线来显示路线。我添加了注释到开始和目的地。即时通讯使用以下api来获取坐标。
现在,如果我更改坐标,则现有路线也可见。如何删除现有路线并添加新路线? 提前谢谢。
答案 0 :(得分:2)
除非我在您的问题中遗漏了某些内容,否则如果您已经让应用计算并显示MKPolyline
,那么您需要做的就是删除旧版本并添加新版本。您的代码看起来像
// generating new data, do this however you like
MKPolyline *routeLine = [self generateNewRoutLine];
MyPinAnnotation *startPin = [self generateNewStartPin];
MyPinAnnotation *endPin = [self generateNewEndPin];
// removing old overlays and adding new
[myMapView removeOverlays:myMapView.overlays]; // removes all overlays
[myMapView removeAnnotations:myMapView.annotations]; // removes all pins
[myMapView addOverlay:routeLine];
[myMapView addAnnotations:[NSArray arrayWithObjects:startPin, endPin, nil]];