我的应用中有一个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英里半径(由三角洲设定)...
为了确保我的地图在当前用户的位置加载,我在viewWillAppear
方法中添加了以下内容:
[self setOriginalRegion];
但是这是在海洋中间的某个地方开始的地图(离加纳海岸约100英里......这当然不是默认的,因为默认它会加载到北美。我是什么人在这里做错了吗?
答案 0 :(得分:1)
正如@AndreMunis指出的那样,viewWillAppear
过早地知道用户的位置,将方法调用移到viewDidAppear
并且代码就像魅力一样!