2

AppDelegate我试图将我的 mapView 集中在用户的位置上,但是在 mapView 或视图控制器加载之前引发了一个异常。

mapViewMQMapView 较早分配的 userLocationmapView.userLocation.location.coordinate

MQCoordinateSpan userSpan = MQCoordinateSpanMake(1000, 1000);

MQCoordinateRegion userRegion = MQCoordinateRegionMake(userLocation, userSpan);

[mapView setRegion:userRegion animated:true];

据我从 MapQuest 开发人员指南中可以看出,我正确地调用了 setRegion。知道什么可能导致异常吗?

4

1 回答 1

1

我的 iPhone4S 崩溃了,控制台显示了区域的 nan 值。在尝试了来自 SO 的大约 7 种不同的解决方案以及来自 Apple DTS 的各种建议后,我通过消除 regionThatFits 调用来解决它。我只是使用:

CLLocationDistance visibleDistance = 100000; // 100 kilometers
MKCoordinateRegion adjustedRegion = MKCoordinateRegionMakeWithDistance(zoomLocation, visibleDistance, visibleDistance);

[_mapView setRegion:adjustedRegion animated:YES];

显然,该 regionThatFits 方法存在问题。

于 2012-12-12T03:53:46.833 回答