MKCoordinateRegion не отображается на карте надлежащим образом - PullRequest
0 голосов
/ 24 февраля 2012

Я использую следующий код для уменьшения масштаба карты MKMapView.

float zoom=1.5;
MKCoordinateRegion region;
//Set Zoom level using Span
MKCoordinateSpan span;  
region.center=mapView.region.center;
span.latitudeDelta=mapView.region.span.latitudeDelta *zoom;
span.longitudeDelta=mapView.region.span.longitudeDelta *zoom;
region.span=span;
[mapView setRegion:region animated:TRUE];

Но в случае, когда zoom = 1.1, zoom = 1.3 или zoom = 1.5, карта отображает один и тот же региан во всех 3 случаях. Эта область выглядит так же, как и при zoom = 2.

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

Ответы [ 2 ]

1 голос
/ 24 февраля 2012

Попробуйте это

MKCoordinateSpan span; 
//You can set span for how much Zoom to be display
span.latitudeDelta=.005;
span.longitudeDelta=.005;

//set Region to be display on MKMapView
MKCoordinateRegion cordinateRegion;
cordinateRegion.center=latAndLongLocation.coordinate;
//latAndLongLocation coordinates to be display 
cordinateRegion.span=span;

[mapView setRegion:cordinateRegion animated:YES];
//mapView MkMapView

Это точно сработает.

1 голос
/ 24 февраля 2012

Попробуйте это ....

region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapView setRegion:region animated:YES]; 

Вы можете установить span.longitudeDelta и span.latitudeDelta в качестве степени увеличения или уменьшения масштаба ... А также инициализировать MKCoordinateRegion ..

MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } } 

Установить делегата для mapView

[mapView setDelegate:self];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...