Как уменьшить масштаб MKMapView без использования didAddAnnotationViews?

Я пытаюсь найти способ увеличить или уменьшить масштаб с помощью кнопки. Если я положу код в методе didAddAnnotationViews, он установит начальный зум идеально. Я попытался изменить масштаб изображения с помощью приведенного ниже кода, но он продолжает падать, говоря:

Нераспознанный селектор отправлен в экземпляр

Как я могу запустить это в IBAction?

-(IBAction)ZoomIn:(MKCoordinateSpan)coordinateSpanWithMapView:(MKMapView *)mv centerCoordinate:(CLLocationCoordinate2D)location
{
   MKCoordinateRegion region;
   MKCoordinateSpan span; 
   span.latitudeDelta=0.05;
   span.longitudeDelta=0.05;
   location = mv.userLocation.coordinate;
   location = mv.userLocation.location.coordinate;
   region.span=span;
   region.center=location;
   [mv setRegion:region animated:TRUE];
   [mv regionThatFits:region]; 
};

2 ответа

-(void)zoomOut:btnMinus
{
  MKCoordinateSpan span = mapView.region.span;
  span.latitudeDelta = span.latitudeDelta * 2;
  span.longitudeDelta = span.longitudeDelta * 2;
  region.span=span;
  [mapView setRegion:region animated:YES];
  for(int j=2;j<count;j++)
  { places[j]=1;}
  [self filterAnnotations];  
}

Моя проблема заключалась в том, что я пытался передать MapView в строке IBAction, что я не смог сделать. Он не знал, что с этим делать. Я ссылался на свой MapView в коде вместо того, чтобы пытаться передать его в метод...

CLLocationCoordinate2D location;
MKCoordinateRegion region;
MKCoordinateSpan span; 
span.latitudeDelta=1.00;
span.longitudeDelta=1.00;
location = self.myMap.userLocation.coordinate;
location = self.myMap.userLocation.location.coordinate;
region.span=span;
region.center=location;
[self.LightUpMap setRegion:region animated:TRUE];
[self.LightUpMap regionThatFits:region];

Вы можете указать это любым методом IBAction сейчас, и он увеличит карту.

Другие вопросы по тегам