2011-09-18 7 views
3

다음 방법을 사용하여지도보기에 다른 색의 다각형을 만들 수 있습니까?다른 색의 다각형 오버레이

-(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id)overlay{ 

내가 2 개의 다각형을 가지고 있다면 빨간색과 노란색 중 하나를 설정할 수 있습니까?

+0

당신이 여러 다각형의 코드를 편집 할 수 있습니다하시기 바랍니다 정렬. –

답변

13

한 가지 방법은 title 속성을 사용하여 한 폴리곤을 다른 폴리곤과 구분하는 것입니다.

다각형을 추가 할 때, 그에 따라 자신의 제목을 설정

:

pone.title = @"one"; 
[mapView addOverlay:pone]; 

pother.title = @"other"; 
[mapView addOverlay:pother]; 

그런 다음 viewForOverlay, 당신은 제목에 따라 색상을 설정할 수 있습니다

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay 
{ 
    MKPolygonView *pv = [[[MKPolygonView alloc] initWithPolygon:overlay] autorelease]; 

    if ([overlay.title isEqualToString:@"one"]) 
     pv.fillColor = [UIColor redColor]; 
    else if ([overlay.title isEqualToString:@"other"]) 
     pv.fillColor = [UIColor yellowColor]; 
    else 
     pv.fillColor = [UIColor blueColor]; 

    return pv; 
} 
+0

고마워요! – ChrisM