2012-08-15 3 views
0

У меня вообще нет проблем с размещением аннотаций на моем MKMapView. У меня есть контакты для разных мест, и код автоматически центрируется и устанавливает диапазон на основе значений max и min. Тем не менее, я замечаю, что когда я добавляю все больше и больше очков, есть определенная сумма, которую моя карта будет уменьшать, чтобы увидеть, и я теряю то, что находится на краю. Вот несколько фото:Почему мой MKMapView не масштабируется так сильно, как должен?

Вот как это выглядит, когда я сначала загрузить MKMapView:

http://www.grapekeeper.com/tempcrap/start.png

Когда я панорамирование я могу увидеть больше булавки, которые потеряли на этом первоначальный вид:

http://www.grapekeeper.com/tempcrap/start-move.pnghttp://www.grapekeeper.com/tempcrap/start-pan.png

И когда я зажать в симуляторе это как просигналить, как он идет:

http://www.grapekeeper.com/tempcrap/pinch-zoom-out.png

Вот мой код для справки:

double min = [[allLatitudes valueForKeyPath:@"@min.self"] doubleValue]; 
double max = [[allLatitudes valueForKeyPath:@"@max.self"] doubleValue]; 
double latSpan = max-min; 
double minL = [[allLongitudes valueForKeyPath:@"@min.self"] doubleValue]; 
double maxL = [[allLongitudes valueForKeyPath:@"@max.self"] doubleValue]; 
double lonSpan = maxL-minL; 
double avgLatitude = (max+min)/2; 
double avgLongitude = (maxL+minL)/2; 

overallRegion.center.latitude = avgLatitude; 
overallRegion.center.longitude = avgLongitude; 
overallRegion.span.latitudeDelta = latSpan; 
overallRegion.span.longitudeDelta = lonSpan; 

[self.mapView setRegion:overallRegion animated:YES]; 
+0

Кстати, я также попробовал установить 'generalRegion.span.latitudeDelta = 180' и' totalRegion.span.longitudeDelta = 360' с тем же результатом. – lemontwist

+0

Каковы размеры вида карты? Что произойдет, если вы сделаете это на весь экран? – Anna

+0

@ AnnaKarenina, 300x300 пикселей, я попробовал изменить размер и соотношение сторон, не повезло. Я также попытался использовать аспект, чтобы посмотреть, поможет ли это, и это не имело никакого значения. – lemontwist

ответ

1

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

1

выглядит просто добавив немного больше пространства и с учетом диагонали помогут см What's the best way to zoom out and fit all annotations in MapKit

, который дает хороший способ делать именно то, что вам хотеть.

+1

Не помогло. Все еще не уменьшает масштаб, чтобы показать все. Я не могу даже вручную ущипнуть/уменьшить масштаб. – lemontwist

+0

ой! интересный, просто попробовал сам в своем приложении и не мог ущипнуть, чтобы увидеть весь мир. Я думаю, проблема заключается в том, что нет уровня масштабирования, который может показать всю карту мира! Странно, теперь я заинтригован. http://stackoverflow.com/questions/4973645/mapkit-show-entire-globe кажется, что это невозможно. – timofei7

+0

Да, это действительно странно. Я имею в виду, что это не огромная сделка, но я отчасти анал, поэтому я бы хотел сразу увидеть все контакты. Конечно, я уверен, что все это изменится после выхода iOS6 ... – lemontwist

Смежные вопросы