2013-06-19 48 views
0

我正在设计一个在地图上以MKPolyLines的形式覆盖几条路线的交通应用程序。目前,各种路线的颜色被设置为MKPolyLine的标题属性。我想知道是否有办法检测不同颜色的线条重叠的时间,然后更改颜色。目前,当两条路线相互叠加时,颜色就是最后一条。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

我结束了使用MKPolylineView的lineDashPattern属性。将其应用于其中一条重叠线可以达到所需的效果。