Andy Dewan
Andy Dewan

Reputation: 245

MapKit default zoom

For some reason my market won't zoom to the local region. In fact, it does not change the zoom no matter what I change. Am I loading it in the wrong part of the code, or am I missing something else? Any help is appreciated.

My code is:

@IBOutlet var here: MKMapView!

var locationManager: CLLocationManager?
var selectedItem: String?
func locationManager
    (manager: CLLocationManager!,didUpdateToLocation newLocation: CLLocation!,
    fromLocation oldLocation: CLLocation!){
        manager.desiredAccuracy = kCLLocationAccuracyBest


        var region = self.here.region as MKCoordinateRegion

        self.here.setRegion(region, animated: true)
        region.span.longitudeDelta = 0.0144927536
        region.span.latitudeDelta = 0.0144927536

}

Upvotes: 5

Views: 15819

Answers (1)

leerob
leerob

Reputation: 3122

I believe you need to set the lat and long BEFORE you set the region. The setRegion function is what zooms in on a certain part, and the level of the zoom depends on your span. Here's an example of a map that zooms.

let span = MKCoordinateSpanMake(0.075, 0.075)
let region = MKCoordinateRegion(center: CLLocationCoordinate2D(latitude: lat, longitude: long), span: span)
mapView.setRegion(region, animated: true)

Upvotes: 26

Related Questions