我正在设计一个过境应用程序,它在地图上以MKPolyLines的形式覆盖多条路线。目前,各种路线的颜色被设置为MKPolyLine的标题属性。我想知道是否有办法检测不同颜色的线条何时重叠,然后改变颜色。目前,当两条路线相互叠加时,颜色就是最后添加的路线。
我对伪代码的尝试
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
MKPolyline *polyline = (MKPolyline *)overlay;
UIColor *color = [self colorWithHexString:polyline.title];
MKPolylineView *polylineView = [[MKPolylineView alloc] initWithPolyline:overlay];
if the polyline matches an already existing polyline{
color = new color
}
polylineView.strokeColor = color;
polylineView.lineWidth = 5.0;
}
看起来够简单?不确定是否可以比较折线并查看是否已经在地图上,可能不是一个足够精确的标识符。谢谢你的帮助。
答案 0 :(得分:0)
我最终使用了MKPolylineView的lineDashPattern属性。将其应用于其中一条重叠线可达到预期效果。