首次加载时,将ios mapview置于放大模式

时间:2013-01-31 18:20:49

标签: ios annotations mkmapview html zooming

您好我正在使用iOS6内部iPad应用。在我的ViewController上我有一个滚动视图。在左下角我有一个地图视图(20,594,360,347)。我在滚动视图上的地图视图位置。我有一个获取位置按钮。在放大模式下正确显示位置(它清楚地显示我在办公室的办公室)。工作正常。我保存记录并打开另一个并保存此记录。所以我现在有2条记录。这是我的问题。我打开了我的第一张唱片,它将地图带入世界观。我可以看到我的办公室在哪里的注释,我放大...放大,我看到我的办公室。它不会直接在放大模式下使位置。我关闭了这个第一条记录并打开了第二条记录,它带来了放大模式的位置(可以看到我的办公室)。我现在打开第一张唱片,我放大模式(我可以清楚地看到我的办公室)。那么如何让地图视图第一次以放大模式显示我的第一条记录?

摘要:首次打开已保存的记录会在世界视图中显示地图,而不是放大模式。

- (void)setMap:(CLLocationCoordinate2D)currentCoordinates{ 
....code
[self.nwMapView setMapType:MKMapTypeSatellite];

[self.nwMapView setScrollEnabled:YES];

MKCoordinateRegion extentsRegion = MKCoordinateRegionMakeWithDistance(currentCoordinates, 80, 80);
extentsRegion.span.longitudeDelta = 0.002f;
extentsRegion.span.latitudeDelta = 0.002f;


[self.nwMapView setRegion:extentsRegion animated:NO];
ITMAnnotation *annotation = [[ITMAnnotation alloc] initWithCoordinate:currentCoordinates addressDictionary:nil];
annotation.title = @"Drag to Move Pin";
annotation.subtitle = [NSString stringWithFormat:@"%f %f", annotation.coordinate.latitude, annotation.coordinate.longitude];
NSLog(@"subtitle change at 314");

[self.nwMapView addAnnotation:annotation];
self.tempMapView = self.nwMapView;
}

我应该启用什么设置才能使地图处于放大模式。?如果您需要更多信息,请询问。感谢。

1 个答案:

答案 0 :(得分:0)

你在什么时候打电话给setMap?如果您在viewDidLoad之前执行此操作,那么您将失去对UI所做的所有设置,因为它尚未加载。加载VC后,您可以setRegion在地图上执行任何操作。我怀疑你正在重复使用VC和第二条记录,所以它在地图上调用setRegion被读取使用。