Ios MPMapView中的奇怪行为

Ios MPMapView中的奇怪行为,ios,objective-c,mkmapview,Ios,Objective C,Mkmapview,我的应用程序中有一个获取用户当前位置的getLocation按钮,该按钮调用以下方法: -(void)setOriginalRegion { float spanX = 0.217; float spanY = 0.217; MKCoordinateRegion region; region.center.latitude = self.mapView.userLocation.coordinate.latitude; region.center.long

我的应用程序中有一个获取用户当前位置的
getLocation
按钮,该按钮调用以下方法:

-(void)setOriginalRegion {
    float spanX = 0.217;
    float spanY = 0.217;
    MKCoordinateRegion region;
    region.center.latitude = self.mapView.userLocation.coordinate.latitude;
    region.center.longitude = self.mapView.userLocation.coordinate.longitude;
    region.span.latitudeDelta = spanX;
    region.span.longitudeDelta = spanY;
    [self.mapView setRegion:region animated:YES];
}
这工作得很好,当点击时,我得到了我的位置和15英里半径(由三角洲设置)

为了确保我的地图加载到当前用户的位置,我在我的
视图将出现
方法中添加了以下内容:

[self setOriginalRegion];

但是那是在海洋中央的某处开始地图。(离加纳海岸大约100英里……这当然不是默认设置,因为默认情况下它装载在北美。我在这里做错了什么?

正如@AndreMunis所指出的,
视图将出现
要知道用户的位置还为时过早,将我的方法调用移动到
视图出现
,代码就像一个符咒一样工作!

在获取用户位置后,是否调用您的函数?