MKMapView重置回世界视图

时间:2011-01-20 15:59:17

标签: ios iphone cocoa cocoa-touch mkmapview

如何将MKMapView重置回世界视图缩放级别?

4 个答案:

答案 0 :(得分:38)

世界的地图rect存储为名为MKMapRectWorld的常量。

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

另一种方法是设置地图的缩放级别。虽然MapKit框架不像Google Maps API那样支持缩放级别,但您可以使用Troy Brant编写的category extension

将中心坐标设置为0,0,缩放级别为0,以获得相同的结果。

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

答案 1 :(得分:15)

试试这个:

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

这将使用当前中心坐标和最大可能跨度(180度纬度,360度经度)为地图视图设置一个新区域。

答案 2 :(得分:1)

对于那些希望在Swift中做到这一点的人:

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

答案 3 :(得分:0)

MKMapView无法缩小以显示整个世界。无论您使用什么,MKMapRectWorld,缩放级别0或MKCoordinateSpanMake(180, 360)