2013-09-24 4 views
0

Каждый раз, когда я что-то искал на карте, карта масштабируется в нужное место. Тем не менее, после первого поиска увеличенная область увеличена слишком сильно и продолжает увеличиваться с каждым дополнительным поиском. Я попытался добавить в регионы широту и долготу дельты, но она не увеличивается. Я добавил код, который я использую, чтобы увеличить масштаб до найденного местоположения. Заранее спасибо.mapView область широта и долгота дельта уменьшается каждый поиск

CLPlacemark *topResult = [placemarks objectAtIndex:0]; 
          MKPlacemark *placemark = [[MKPlacemark alloc] initWithPlacemark:topResult]; 


          MKCoordinateRegion region = self.mapView.region; 
          region.center = placemark.region.center; 
          region.span.longitudeDelta /= 100.0; 
          region.span.latitudeDelta /= 100.0; 



          [self.mapView setRegion:region animated:YES]; 
          [self.mapView addAnnotation:placemark]; 



          NSLog(@"Region span long: %f",region.span.longitudeDelta); 
          NSLog(@"Region. span lat:: %f",region.span.latitudeDelta); 

          region = self.mapView.region; 
          region.span.longitudeDelta *= 100; 
          region.span.latitudeDelta *= 100; 

ответ

2

Вы каждый раз берете регион из mapView и делаете delta/= 100, затем снова устанавливаете его в mapView.
Ваш * = 100 не действует, потому что он нигде не хранится.
Итак, это дает вам эффект zomming для каждого поиска)

+0

А, так очевидно, кто-то говорит вам. Благодаря! – user1681673