Вопрос

у меня есть MapView с выводами на нем и следующий код для CLLocation и getDistance между мной и другими точками на карте:

    - (void)locationManager:(CLLocationManager *)manager
    didUpdateToLocation:(CLLocation *)newLocation
           fromLocation:(CLLocation *)oldLocation{

 Koordinate *kunde = [[Koordinate alloc] init];
 kundenPoints = [[NSMutableArray array] retain];

 for(int i = 0; i<[eventPoints count]; i++){
  kunde = [eventPoints objectAtIndex:i];
  CLLocation *userLoc = [[CLLocation alloc] initWithLatitude:kunde.latitude longitude:kunde.longtitude];
  double distance = [newLocation getDistanceFrom:userLoc] / 1000;
  if(distance <= 100){
   [kundenPoints addObject:kunde];
  }else {
  }
 }
 [mapView addAnnotations:kundenPoints];
}

но как я могу реализовать метод, который обновляет карту, когда я нажимаю на кнопку?что я всегда надеваю булавки на себя, когда хочу.проблема не в кнопке, а только в обновлении!

я надеюсь, что кто-нибудь мог бы мне помочь??

с наилучшими пожеланиями Марко

Это было полезно?

Решение

насколько я знаю, нет такой вещи, как removeAllAnnotations, по крайней мере, не в iOS4 SDK...хотя вы можете быстро исправить это с помощью

NSArray *ants = [mapView_ annotations];
[mapView_ removeAnnotations:ants];

то же самое относится и к наложениям

NSArray *ants = [mapView_ overlays];
[mapView_ removeOverlays:ants];

пока это лучший способ, который я нашел для этого.

Другие советы

Просто removeAllAnnotations в ваш MapView и добавьте новые, это обновит примечания на вашей карте.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top