我只是想将地图视图居中到一个位置,但它一直在崩溃,这是代码:
@property (weak, nonatomic) IBOutlet MKMapView *map;
...
CGFloat x = 94.71;
CGFloat y = 6.94;
CLLocationCoordinate2D pointLocation = CLLocationCoordinate2DMake(x, y);
[[self map] setCenterCoordinate:pointLocation animated:YES];
因未捕获的异常'NSInvalidArgumentException'而终止应用,原因:'无效的坐标+94.70999908,+ 6.94000000
此代码曾用于其他应用程序...不知道为什么它不起作用...是因为数据类型(CGFloat)?
答案 0 :(得分:4)
如果坐标符合以下至少一个条件,则该坐标被视为无效:
其纬度大于90度或小于-90度。
它的经度大于180度或小于-180度。
Core Location Functions Reference
您可以使用BOOL CLLocationCoordinate2DIsValid ( CLLocationCoordinate2D coord );