我在这里设置区域坐标:
// Center Map Here on initial load
#define CENTER_LATITUDE 22.11111 #fake for example
#define CENTER_LONGITUDE -23.99292 #fake for example
我在这里设置区域缩放:
MKCoordinateRegion region;
region.center.latitude = CENTER_LATITUDE;
region.center.longitude = CENTER_LONGITUDE;
region.span.latitudeDelta = SPAN_VALUE;
region.span.longitudeDelta = SPAN_VALUE;
[self.mapView setRegion:region animated:NO];
这是我的 mapView didUpdateUserLocation 方法:
-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation
*)userLocation {
CLLocationCoordinate2D loc = [userLocation coordinate];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(loc, 500, 500);
[self.mapView setRegion:region animated:YES];
self.mapView.centerCoordinate = userLocation.location.coordinate;
}
我知道这只会放大定义的区域,但是使用与此类似的东西,有没有办法获取当前用户位置,而不是像上面那样设置预定义坐标?
我希望地图找到当前用户位置,然后在地图上放大到它,如果这有意义的话。