Скройте, покажите аннотацию на MkMapView

Как скрыть аннотацию при уменьшении представления карты. У меня есть большое количество аннотации, я должен скрыть их, потому что, если регион, отображенный на карте, является слишком большим, Вы видите только аннотации.

7
задан Luca 20 January 2010 в 10:08
поделиться

1 ответ

Чтобы сделать это, вы должны проверить размер вашего региона, и в зависимости от него вы устанавливаете представления, скрытые или нет.

Я проверил код ниже, но вам, вероятно, понадобятся некоторые настройки.


- (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

16
ответ дан 6 December 2019 в 07:06
поделиться