CLLocationCoordinate2D defaultCoordinate;
defaultCoordinate.latitude = 47.517201;
defaultCoordinate.longitude = -120.366211;
[locationView setRegion:MKCoordinateRegionMake(defaultCoordinate, MKCoordinateSpanMake(250, 250)) animated:NO];
我创建一个
CLLocationCoordinate2D
,设置其坐标,然后同时创建一个MKCoordinateRegion
,并设置地图视图locationView
的区域。这是我得到的错误:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid Region <center:+47.51720100, -120.36621100 span:+250.00000000, +250.00000000>'
有人知道为什么会给我这个错误吗?我相当确定坐标是有效的。
最佳答案
MKCoordinateSpan接受经度和纬度范围。您正在通过250250。整个地球的经度仅从-180到180,而纬度从-90到90。您需要将我假设的250米的测量值转换为经度和纬度。
或者使用函数MKCoordinateRegionMakeWithDistance
MKCoordinateRegion MKCoordinateRegionMakeWithDistance(
CLLocationCoordinate2D centerCoordinate,
CLLocationDistance latitudinalMeters,
CLLocationDistance longitudinalMeters
);
关于ios - XCode不接受我的CLLocationCoordinate2D。说“无效区域”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17751048/