Чтобы сделать это, вы должны проверить размер вашего региона, и в зависимости от этого вы устанавливаете скрытые виды или нет.
Я тестировал код ниже, но вам, вероятно, понадобятся некоторые корректировки.
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
NSArray *annotations = [_mapView annotations];
MyAnnotation *annotation = nil;
for (int i=0; i<[annotations count]; i++)
{
annotation = (MyAnnotation*)[annotations objectAtIndex:i];
if (_mapView.region.span.latitudeDelta > .010)
{
[[_mapView viewForAnnotation:annotation] setHidden:YES];
}
else {
[[_mapView viewForAnnotation:annotation] setHidden:NO];
}
}
}
Ура,
VFN