有人能帮帮我吗?我是xcode的新手,我认为这是一个小问题。由于某些原因,当我的地图第一次从我的初始视图控制器打开时,大头针掉落了,但地图没有缩放到正确的区域,即使纬度和经度是正确的。
当我回到第一个视图控制器并再次启动它时,缩放工作了
我的代码在viewdidload下的视图控制器实现文件中。
- (void) viewDidLoad {
[super viewDidLoad];
NSLog(@"lat in map %@", eventLat);
NSLog(@"long in map %@", eventLong);
[mapview setMapType:MKMapTypeStandard];
[mapview setZoomEnabled:YES];
[mapview setScrollEnabled:YES];
MKCoordinateRegion region = { {0.0, 0.0 }, {0.0, 0.0 } };
region.center.latitude = [eventLat doubleValue];
region.center.longitude = [eventLong doubleValue];
region.span.latitudeDelta = 0.01f;
region.span.longitudeDelta = 0.01f;
[mapview setRegion:region animated:YES];
MMAnnotate *ann = [[MMAnnotate alloc] init];
ann.title = @"Test Title";
ann.subtitle = @"Test Subtitle";
ann.coordinate = region.center;
[mapview addAnnotation:ann];
}
您应该尝试在viewDidAppear中这样做。如果你准备让它在每次视图出现时缩放到那个位置。viewDidLoad在mapview周期中太早了