根据用户的位置居中映射

时间:2010-01-21 05:27:46

标签: iphone cocoa-touch iphone-sdk-3.0 mapkit

我想将地图(mapkit)置于用户位置的中心位置。我在模拟器中执行以下操作,但只获得没有内容的蓝色地图。我应该采取什么措施?

MKCoordinateRegion region;
MKCoordinateSpan span;
span.latitudeDelta=0.2;
span.longitudeDelta=0.2;

CLLocationCoordinate2D location;
location.latitude = mapView.userLocation.location.coordinate.latitude;
location.longitude = mapView.userLocation.location.coordinate.longitude;

region.span=span;
region.center=location;
[self.mapView setRegion:region animated:TRUE];
[self.mapView regionThatFits:region];

以上的长/纬度值为:

location.latitude = 1.0256307104653269e-305
location.longitude = 1.2742349910917941e-313

---编辑---
我在这里找到了我的后续评论的答案:Mapkit UserLocation found event。与下面的答案一起使用,提供解决方案。

1 个答案:

答案 0 :(得分:1)

没有内容的蓝色地图通常意味着你在海洋中的某个地方。缩小并检查您的坐标,您最有可能在非洲海岸的纬度0.0和经度0.0。您是否检查了纬度和经度中的值?

您也可以尝试将-setCenterCoordinate: animated:userLocation中心一起使用。