I know its a very common issue but I am not getting the exact answer for this thing.
How to make MKMapView defaults to a zoom of a 5 mile radius of current location.
Thanks in advance.
Use the MKCoordinateRegionMakeWithDistance
function from MapKit.
Use a conversion function to convert miles to meters since MapKit uses meters.
float MilesToMeters(float miles) {
// 1 mile is 1609.344 meters
// source: http://www.google.com/search?q=1+mile+in+meters
return 1609.344f * miles;
}
Then in your code set the map region as (thanks to @DylanBettermann for pointing out that to get a radius of 5 miles, the distance needs to be doubled)
mapView.region = MKCoordinateRegionMakeWithDistance(
centerCoordinate,
MilesToMeters(10.0f),
MilesToMeters(10.0f)
);
swift 4 version :
mapView.region = MKCoordinateRegion(
center: centerCoordinate,
latitudinalMeters: MilesToMeters(10.0f),
longitudinalMeters: MilesToMeters(10.0f)
)