2015-02-02 3 views
7

나는 다음과 같은 오류가 점점 오전 7 : initWithPolyline가 :되지 않습니다 : 첫번째 아이폰 OS에서 사용되지 않는 7.0MKPolylineView initWithPolyLine : 아이폰 OS에서 더 이상 사용되지 않습니다

MKPolylineView *lineView = [[MKPolylineView alloc] 
     initWithPolyline:overlay]; 

대신의 교체 방법은 무엇입니까?

+3

대답으로 MKPolylineRenderer를 사용하지만 viewForOverlay 대신 rendererForOverlay 대리자 메서드를 구현해야합니다. – Anna

답변

5

initWithPolyline:에 대해서는 documentation을 참조하십시오. 대신 MKPolylineRenderer 개체를 사용하는 지원 중단 설명문을 읽어보십시오.

1

MKPolylineRenderer, 특히 -initWithPolyline (iOS 7 이상에서 사용 가능)을 살펴보고 싶습니다.

10

(MKOverlayView *) 형식 대리자 대신 (MKOverlayRenderer *) 형식 대리자를 사용해야합니다. 그리고 MKPolylineView 대신 MKPolylineRenderer을 반환하십시오.

-(MKOverlayRenderer *)mapView:(MKMapView *)mapView 
      rendererForOverlay:(id<MKOverlay>)overlay { 

    MKPolylineRenderer *renderer = [[MKPolylineRenderer alloc] initWithOverlay:overlay]; 
    renderer.strokeColor = [UIColor redColor]; 
    renderer.lineWidth = 5.0; 

    return renderer; 
}