2013-05-23 12 views
14

Ich verwende diesen Code in viewWillLayoutSubviews, um die anfängliche Region meiner Karte festzulegen.MKMapView Einstellung der anfänglichen Zoomstufe

CLLocationCoordinate2D startCoord = CLLocationCoordinate2DMake(13.747266, 100.526804); 
MKCoordinateRegion adjustedRegion = [self.mapView regionThatFits:MKCoordinateRegionMakeWithDistance(startCoord, 800, 800)]; 
[self.mapView setRegion:adjustedRegion animated:YES]; 
NSLog(@"%f",adjustedRegion.span.latitudeDelta); 

Die anfängliche Zoomstufe funktioniert jedoch nicht. Die Koordinate ist korrekt, aber sie zoomt immer auf das Maximum. Ich überprüfe die Spannweite der Region und habe 0.0 bekommen. Wie behebe ich das?

+0

Verwenden setSpan: Immobilien zum self.mapView – MadhuP

Antwort

29

Sie müssen Ihre Spannweite einstellen.So geben Sie Ihren Spannweitenwert hier.

adjustedRegion.span.longitudeDelta = 0.005; 
adjustedRegion.span.latitudeDelta = 0.005; 
+0

wenn es funktioniert, dann verwenden yu es nicht .. –

+5

Ich frage nur, ob MkCoordinateRegionMakeWithDistance es automatisch tun sollte, oder mein Verständnis ist falsch. Das ist alles ... – harinsa

+0

Ich denke, Ihre sichtbare Entfernung ist klein.So machen Sie es bitte lang. –

0

Benutzerdefinierte Bereichseinstellung:

region.span.longitudeDelta = 0.04; 
region.span.latitudeDelta = 0.04; 

sonst programmatisch:

region.span.longitudeDelta = geoMapView.region.span.latitudeDelta; 
region.span.latitudeDelta = geoMapView.region.span.latitudeDelta; 
Verwandte Themen