如何将MKMapView
重置回世界视图缩放级别?
答案 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)
。