Перекрытие MKPolyline

У меня есть две дорожки (скажем, синего и красного цвета) (MKPolyline), которые я добавляю в свой MapView с помощью метода addOverlay. Затем я определил метод viewForOverlay, и маршруты нормально загружаются на карту. Но проблема в том, что я хочу, чтобы синий был поверх красного, но происходит обратное.

Как сделать так, чтобы моя красная дорожка располагалась поверх синей дорожки, когда они перекрываются?


person Kunal Shrivastava    schedule 10.10.2014    source источник


Ответы (1)


Метод mapView:viewForOverlay: устарел с iOS 7.0, см.:

https://developer.apple.com/library/ios/documentation/MapKit/Reference/MKMapViewDelegate_Protocol/index.html#//apple_ref/occ/intfm/MKMapViewDelegate/mapView:viewForOverlay:

Новый метод — mapView:rendererForOverlay: с MKPolylineRenderer объектами.

Чтобы наложить синюю накладку поверх красной, можно использовать следующий метод:

insertOverlay:aboveOverlay:

Документы Apple подробно описывают добавление и вставку методов наложения:

https://developer.apple.com/library/ios/documentation/MapKit/Reference/MKMapView_Class/index.html#//apple_ref/doc/uid/TP40008205-CH3-SW71

Удачи!

person Rowan Jones    schedule 10.10.2014