MKMapView reset вернуться к мировоззрению

Как вернуть MKMapView обратно в уровень масштабирования в мире?

Ответ 1

Попробуйте следующее:

MKCoordinateRegion region = MKCoordinateRegionMake(mapView.centerCoordinate, MKCoordinateSpanMake(180, 360));
[mapView setRegion:region animated:YES]; 

Это установит новую область для отображения карты с использованием текущей центральной координаты и максимально возможного диапазона (180 градусов широты, 360 градусов долготы).

Ответ 2

Карта rect для мира сохраняется как константа с именем MKMapRectWorld.

MKCoordinateRegion worldRegion = MKCoordinateRegionForMapRect(MKMapRectWorld);
map.region = worldRegion;

Другой способ - установить уровень масштабирования карты. Хотя платформа MapKit не поддерживает уровни масштабирования по API Google Maps, вы можете использовать расширение , написанное Трой Брантом.

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

[map setCenterCoordinate:CLLocationCoordinate2DMake(0, 0) zoomLevel:0 animated:0];

Ответ 3

MKMapView не может уменьшить масштаб, чтобы показать весь мир. Независимо от того, что вы используете, MKMapRectWorld, уровень масштабирования 0 или MKCoordinateSpanMake(180, 360).

Ответ 4

Для тех, кто надеется сделать это в Свифт:

let region = MKCoordinateRegion(.world)
mapView.setRegion(region, animated: true)