Одним из способов является использование свойства 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;
}