MKMapView NSInvalidArgumentException ios6中的区域崩溃无效

zhi*_*jie 12 mkmapview ios6

使用MKMapView设置位置坐标时程序崩溃.日志:

因未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'无效区域<center:+112.57075000, +37.87049600 span:+0.05165163, +0.43945312>'

我的计划范围是

MKCoordinateSpan span;
span.latitudeDelta = .05;
span.longitudeDelta = .02;
Run Code Online (Sandbox Code Playgroud)

编码后:

    self.mMKMapview.region = [self.mMKMapview regionThatFits:region];
Run Code Online (Sandbox Code Playgroud)

如日志所示,范围更改为:+0.05165163,+ 0.43945312

有人请帮忙,我在这里待了两天.

谢谢!

小智 16

问题是center坐标:

+112.57075000,+ 37.87049600

纬度必须在-90到+90之间,因此+112.57075超出范围.

检查中心坐标的设置方式或数据是否向后.


此外,您不需要显式调用,regionThatFits因为地图视图在您正常设置区域时自动执行(即只调用setRegion).顺便说一下,地图视图根据需要调整跨度以适应地图视图尺寸或缩放级别是正常的.