这需要我几天......我无法让它工作。我编写了一个在地图上放置图钉的方法,如下所示:
- (void) SetMaps:(NSString *)Lats :(NSString *)lons;
{
if([upLo isEqualToString:@"Y"])
{
NSLog(@"setting maps:%@,%@",Lats,lons);
[mapView setMapType:MKMapTypeStandard];
[mapView setZoomEnabled:YES];
[mapView setScrollEnabled:YES];
[mapView setMapType:MKMapTypeStandard];
[mapView setZoomEnabled:YES];
[mapView setScrollEnabled:YES];
MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };
region.center.latitude = [Lats doubleValue] ;
region.center.longitude = [lons doubleValue];
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapView setRegion:region animated:YES];
[mapView setDelegate:self];
MKPointAnnotation *point = [[MKPointAnnotation alloc] init];
point.coordinate = region.center;
[self.mapView addAnnotation:point];
}
}
如果我在选项卡栏控件应用程序的 secondViewController.m 中调用它,该方法运行良好。
但是,我想从 appdelegate.m 调用它。所以在 appdelegate.m 中,我把
secondViewController *Gper=[[secondViewController alloc]init];
[Gper SetMaps:LAT:LON];
[Gper release];
从这个 NSLog(@"设置地图:%@,%@",Lats,lons); 我可以看到这个方法中的 lat 和 lons 值是正确的。但是,地图不会更改为该位置。
我应该怎么做才能让它显示新的位置?
谢谢你的帮助。