缩放地图时,ios6中的mapview崩溃



我正在尝试将地图跨越两个坐标的中心。它在以前的iOS版本上正常工作,但是现在突然间,我收到了此错误消息:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid Region <center:nan, nan span:nan, nan>' 

关于什么问题的想法?

        CLLocationCoordinate2D savedCoordinate;
        savedCoordinate.latitude = [userDef doubleForKey:@"savedCoordinate-latitude"];
        savedCoordinate.longitude = [userDef doubleForKey:@"savedCoordinate-longitude"];
        savedPosition = savedCoordinate;
        CLLocationDistance visibleDistance = 100;
        MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(savedCoordinate, visibleDistance, visibleDistance);
        MKCoordinateRegion adjustedRegion = [mapView regionThatFits:region];
        [mapView setRegion:adjustedRegion animated:NO];

错误消息告诉您问题:指定的坐标包含 NAN ("不是数字"),而不是常规数字。

如果您记录了坐标件,则应该能够找到细节。特别是,我会看savedCoordinate.latitudesavedCoordinate.longitude。也许您是在用户默认情况下而不是数字存储字符串?如果用户默认值中不存在密钥,则应为0而不是NAN。

另请参见:

  • Wikipedia:Nan

最新更新