每当我启动应用程序时,第一次看到地图会导致默认地图始终缩小而没有注释。当我返回导航控制器并返回到地图时,它现在显示具有相应引脚的正确区域。我用来添加
的代码- (void) zoomIn {
mapView.showsUserLocation = YES;
CLLocationCoordinate2D annotation;
annotation.latitude = 47.640071;
annotation.longitude = -122.129598;
MKPointAnnotation *annoPoint = [[MKPointAnnotation alloc] init];
annoPoint.coordinate = annotation;
annoPoint.title = @"name";
[mapView addAnnotation:annoPoint];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(annotation, 500, 500);
[mapView setRegion:region animated:YES];
}
我从viewDidLoad调用此代码块,但只有在我从导航控制器返回主页并再次输入此UIViewController
后才能使用它。
有谁知道问题是什么或以前见过它?
答案 0 :(得分:0)
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
// this delegate fonction is called when the userlocation is updated
// try to move your code here
}
你也
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
}
希望这会有所帮助
答案 1 :(得分:0)
向我们展示您的viewDidLoad
函数,您可能过早地调用zoomIn
,可能在您的MKMapView初始化之前。